首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Windows的内置ZIP压缩可以编写脚本吗?

当然可以。Windows 的内置 ZIP 压缩功能可以通过编写脚本来实现自动化操作。以下是一个简单的批处理脚本示例,用于将指定文件夹中的所有文件压缩为一个 ZIP 文件:

代码语言:txt
复制
@echo off
setlocal

set "source=%1"
set "destination=%2"

if not defined source (
    echo Please specify a source folder.
    exit /b 1
)

if not defined destination (
    echo Please specify a destination ZIP file.
    exit /b 1
)

if not exist "%source%" (
    echo Source folder "%source%" does not exist.
    exit /b 1
)

echo Compressing "%source%" into "%destination%"...

pushd "%source%"

rem Create the ZIP file
>nul 2>&1 (
    set vbs="%temp%\_.vbs"
    echo Set objArgs = WScript.Arguments > "%vbs%"
    echo WScript.Echo objArgs(0) >> "%vbs%"
    for /f "tokens=* delims=" %%a in ('cscript //nologo "%vbs%" "%source%"') do set "source_quoted=%%a"
    del "%vbs%"
)

>nul 2>&1 (
    set vbs="%temp%\_.vbs"
    echo Set objArgs = WScript.Arguments > "%vbs%"
    echo WScript.Echo objArgs(0) >> "%vbs%"
    for /f "tokens=* delims=" %%a in ('cscript //nologo "%vbs%" "%destination%"') do set "destination_quoted=%%a"
    del "%vbs%"
)

powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::CreateFromDirectory(%source_quoted%, %destination_quoted%); }"

popd

echo Done.

将上述脚本保存为一个 .bat 文件,然后在命令行中运行该脚本,指定源文件夹和目标 ZIP 文件路径即可。例如:

代码语言:txt
复制
compress.bat "C:\source_folder" "C:\destination_folder\archive.zip"

这个脚本使用了 PowerShell 的 Add-Type 命令来加载 System.IO.Compression.FileSystem 程序集,然后调用 ZipFile.CreateFromDirectory 方法来创建 ZIP 文件。在脚本中,我们使用了一些技巧来处理文件路径中的空格和引号,以确保脚本可以正确处理各种路径。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Windows环境下2款免费好用压缩软件7-Zip & Bandizip

7-Zip 7-Zip是一款完全免费而且开源压缩软件,相比其他软件有更高压缩比但同时耗费资源也相对更多,如果你需要一款能够提供强大压缩性能软件,那么它是你最好选择。 ?...7-Zip官网: https://www.7-zip.org/ Bandizip Bandizip 是一款可靠和快速压缩软件,它支持WinZip、7-Zip 和 WinRAR 以及其它压缩格式。...它拥有非常快速压缩和解压缩算法,适用于多核心压缩、快速拖放、高速压缩等功能。 ?...主要功能 支持操作系统: Windows Vista/7/8/10 (x86/x64/ARM64) 许可:免费软件(EULA) 全部压缩/解压缩/浏览/编辑应用程序 提取30多种格式,包括:RAR/RAR5...完全免费,无捆绑和弹窗,两款软件xiaoz都使用过,大体功能基本差不多,论颜值的话Bandizip要高一点,大家可以自行下载测试。

1.6K20

pycharm编写文件如何执行_pycharm可以写java

大家好,又见面了,我是你们朋友全栈君。...最近在做编译原理课设,准备用Java写个GUI整合一下,因为自己LL1文法使用python写,所以需要Java来实现运行python代码,网上给出了主要三种方法,但是使用Jython方法有局限性且不太方便...,于是我将采用最简洁方法 Runtime.getRuntime()运行 python代码,下面给出代码 Process proc; try { /* 注意: 这里这种方式和cmd中使用python...+文件名命令,调用python程序相同 建议先使用cmd方式确认代码能够正常运行,因为如果代码在pycharm下编写执行, 可能在cmd方式下会出现缺少包情况 */ proc = Runtime.getRuntime...IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } 上面给出是一个简单执行

87420

通过 AppSwitch 禁用 WPF 内置触摸让 WPF 程序可以处理 Windows 触摸消息

如果你有需要,可以考虑禁用 WPF 内置实时触摸(RealTimeStylus)。本文介绍禁用方法,使用 AppSwitch,而不是网上广为流传反射方法。...---- 如何设置 AppSwitch 在你应用程序 app.config 文件中加入 Switch.System.Windows.Input.Stylus.DisableStylusAndTouchSupport...=true 开关,即可关闭 WPF 内置实时触摸,而改用 Windows 触摸消息(WM_TOUCH)。...=true" /> 如果你解决方案中没有找到 app.config 文件,可以创建一个: 然后,把上面的代码拷贝进去即可。...WPF Applications - Microsoft Docs WPF 禁用实时触摸 - 林德熙 此方法可以解决问题一览 拖拽窗口或者调整窗口大小时不能实时跟随问题 Why all my WPF

20830

Python 八个实用“无代码”特性

文件压缩 我们可以使用 Python 来压缩文件,而无需下载 tar/zip/gzip 等工具。...举个例子,如果我们想压缩我们刚刚在第 4 节中编写应用程序,我们可以运行以下命令将文件夹压缩zip 文件中。在命令中,选项 -c 代表是“create”即创建含义。...python -m zipfile -c get_time_app.zip get_time_app 当然,我们也可以压缩文件进行解压。...除了支持 zip 格式压缩以外,还支持 tar 和 gzip 压缩。...总结 该篇文章中介绍了一种无需编写任何代码即可使用 Python 内置方法。如果在某些场景下能够想到使用这些方法,毫无疑问可以给我们提供很多便利。希望这篇文章能够给大家带来启发和帮助。

55730

8个无需编写代码即可使用 Python 内置方法

然而,Python 简便性不止如此。你能相信我们可以在不写任何代码情况下使用 Python ?在接下来文章中,我会介绍 8 个无需编写任何代码即可使用 Python 内置功能例子。 0....文件压缩 我们可以使用 Python 来压缩文件,而无需下载 tar/zip/gzip 等工具。...举个例子,如果我们想压缩我们刚刚在第 4 节中编写应用程序,我们可以运行以下命令将文件夹压缩zip 文件中。在命令中,选项 -c 代表是“create”即创建含义。...Python 除了支持 zip 格式压缩以外,还支持 tar 和 gzip 压缩。...总结 该篇文章中介绍了一种无需编写任何代码即可使用 Python 内置方法。如果在某些场景下能够想到使用这些方法,毫无疑问可以给我们提供很多便利。希望这篇文章能够给大家带来启发和帮助。

76120

基于bat脚本前端发布流程设计与实现

bat脚本相关知识和案例编写windows自带命令压缩文件 windows和linux文件传输 如何免密码登录Linux 前端发布流程优化 背景介绍 笔者目前所在开发团队,由于一些限制,没有相关...nt命令脚本)只能在windows2000以上系统运行,但是命令丰富 所以综上所述,我最后选择编写一个dos批处理脚本来解决楼上问题。...方案一:当用户运行相关bat脚本时候,可以让用户输入对应项目名称,然后去匹配对应项目,再执行构建命令,然后执行压缩命令,再上传到linux服务器 方案二:考虑到项目有可能很长,为了优化用户体验,现在统一让用户输入数字...deploy.bat脚本编写 如何实现数字菜单?...,于是我摸着这位大哥文件压缩过河,具体读者可以点开阅读下,我这里就不再赘述了。

58941

win10安装wget,从此可以更快下载文件 and windows10 下 zip命令行参数详解

1.win10安装wget 1.1安装下载 GNU Wget 1.21.3 for Windows 依次如下: 2、将下载好wget.exe放到 C:/windows/system32文件夹下 也可以自行放置文件...下 zip命令行参数详解 第一步 下载 zip 执行文 打开zip官网zip and unzip for the windows command line....\xx\xx\xx\test.zip文件,含-r -q -j 参数则会在zip压缩包中仅有压缩文件而没有文件所在目录,且shell中不显示压缩过程 zip -r -q -j C:\xx\xx\xx...unzip -d /temp test.zip 3、解压时候,有时候不想覆盖已经存在文件,那么可以加上-n参数 unzip -n test.zip unzip -n -d /temp test.zip...unzip -t test.zip 7、将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同文件存在,要求unzip命令覆盖原先文件 unzip -o test.zip -d /

2.1K40

linux中zip文件解压命令,Linux中zip压缩和unzip解压缩命令使用方法

在Linux中,我们可以利用命令进行文件压缩,即zip压缩和unzip解压缩,这篇文章主要介绍了详解Linux中zip压缩和unzip解压缩命令及使用详解,本文给大家介绍非常详细,需要朋友可以参考下...脚本不执行问题实例分析 shell脚本不执行问题:某天研发某同事找我说帮他看看他写shell脚本,死活不执行,报错。...看这错,我就问他是不是在windows编写脚本,然后在上传到linux服务器……果然。...原因:在DOS/windows里,文本文件换行符为rn,而在*nix系统里则为n,所以DOS/Windows里编辑过文本文件到了*nix里,每一行都多了个^M。...解决: 1)重新在linux下编写脚本; 2)vi:%s/r//g:%s/^M//g(^M输入用Ctrl+v,Ctrl+m)附:sh-x脚本文件名,可以单步执行并回显结果,有助于排查复杂脚本问题。

6.6K30

powershell:调用7z,haozip解压缩文件

因为windows内置zip格式文件压缩,所以powershell中可以直接调用powershell函数就能实现zip压缩....利用powershell内置功能实现zip压缩代码如下: # 调用powershell内置功能解压缩 $package 指定 zip 文件到 $targetFolder # 如果 $targetFolder...7z和HaoZip(好压)都提供了命令行解压缩工具,所以可以利用7z或HaoZip来实现 利用7z和HaoZip(好压)实现命令行解压powershell实现代码如下: unpack.ps1...HaoZipC.exe # 如果不设置此值,脚本会通过 assoc,ftype命令查找,但有可能查找不到 #$UNPACK_TOOL="C:\Program Files\7-Zip\7z.exe" #...[压缩包文件] PowerShell解压文件工具 选项: -p,-package 要解压文件(.zip,.tar,.gz...)

3.5K50

python实用小工具介绍

通过Python版FTP服务器方法 看到这里,默认你已经安装了Python,此处测试为python2.7版本 Python没有内置一个直接可以FTP服务器,所以需要第三方组件支持,我找到这个组件叫...四、使用Python解压zip压缩包 如果读者是一名具有关工作经验工程师,一定遇到过要在Linux下解压zip格式压缩需求。...为了读取zip格式压缩包,需要使用unzip,而大部分操作系统都没有安装unzip,因此,每次需要在Linux下解压zip格式压缩包都会比较麻烦。...除了安装unzip工具和编写Python脚本解压zip格式压缩包以外,也可以使用zipfile模块提供了命令行接口。读者以后可以在Linux下,使用Python命令创建和解压zip格式压缩包。...zipfile模块提供命令行接口包含以下几个选项: • -l 显示zip格式压缩包中文件列表 • -c 创建zip格式压缩包 • -e 提取zip格式压缩包 •

61520

【Android 安装包优化】使用 lib7zr.a 静态库处理压缩文件 ( 交叉编译 lib7zr.a 静态库 | 安卓工程导入静态库 | 配置 CMakeLists.txt 构建脚本 )

( jni 中 main 函数声明 | 命令行处理 | jni 调用 lib7zr.so 函数库处理压缩文件完整代码 ) 在之前一系列博客中使用 lib7zr.so 动态库处理压缩文件 , 本篇博客中使用静态库处理压缩文件...源码 | 交叉编译 Android 中使用 7z 可执行程序 ) 中 , 下载并编译了 p7zip 开源项目源码 , 交叉编译出了可以在 Android 平台执行可执行文件 ; D:\develop...# 不同 Android 版本号 和 CPU 架构 需要到对应目录中查找 , 此处是 29 版本 32 位 ARM 架构日志库 # # 可以不配置 : # 可以不进行该配置..., 是 CMake 工具内置变量 # Android CMake 也内置了一些变量 , 如 ANDROID_ABI ${CMAKE_SOURCE_DIR}.../cpp/lib7zr/CPP/include_windows) # 链接函数库 # 参数 1 : 本构建脚本要生成动态库目标 # 参数 2 ~ ... : 后面是之前预编译动态库或静态库

3K30

几个提高工作效率Python内置小工具

四、使用Python解压zip压缩包 如果读者是一名具有关工作经验工程师,一定遇到过要在Linux下解压zip格式压缩需求。...为了读取zip格式压缩包,需要使用unzip,而大部分操作系统都没有安装unzip,因此,每次需要在Linux下解压zip格式压缩包都会比较麻烦。...除了安装unzip工具和编写Python脚本解压zip格式压缩包以外,也可以使用zipfile模块提供了命令行接口。读者以后可以在Linux下,使用Python命令创建和解压zip格式压缩包。...zipfile模块提供命令行接口包含以下几个选项: -l 显示zip格式压缩包中文件列表 -c 创建zip格式压缩包 -e 提取zip格式压缩包 -t 验证文件是一个有效...python -m zipfile -e monty.zip target-dir/ python -m zipfile -l monty.zip 总结:这篇文章介绍了4个Python内置小工具,希望对大家有所帮助

1.1K80

从0开始Python学习013编写一个Python脚本

通过之前学习我们已经了解了Python很多基础运用了,现在我们尝试着做一个有使用价值脚本。 问题 ---- 需求: 我想要一个可以给我备份重要文件程序。...3.文件备份成一个zip文件。 4.zip存档名称是当前日期和时间。 解决方案 ---- 当我们完成基本程序设计时候,就可以编写我们代码了,这就是需求实现过程。...zip_command = "zip -qr {0} {1}".format(target, ''.join(source)) #5.通过给系统传递参数来执行压缩命令(压缩使用是WinRAR所带文件...根据命令输出,我们打印对应消息,显示备份是否创建成功。 版本二 ---- 第一个脚本已经可以工作了,然而我们还可以对他进行优化,使它更强大。...这些环节可以概括如下: 什么(分析) 如何(设计) 编写(实施) 测试(测试与调试) 使用(实施或开发) 维护(优化) 重要 我们创建这个备份脚本过程是编写程序推荐方法——进行分析与设计。

75820

这个开源项目可以学习一下,支持99%常用文件!

如果还不会小伙伴,可以先看看之前分享: Spring Boot 2.x基础教程:实现文件上传 Spring Boot 2.x基础教程:多文件上传 文件上传实现之后,通常最常见另外两个操作就是下载和预览...你知道?...,tar.gz发行包,提供一键启动脚本和丰富配置项,方便部署使用 提供Docker镜像发行包,方便在容器环境部署 抽象预览服务接口,方便二次开发,非常方便添加其他类型文件预览支持 最最重要Apache...,rar,jar,tar,gzip等压缩包,预览效果如下 可点击压缩包中文件名,直接预览文件,预览效果如下 6、理论上支持所有的视频、音频文件,由于无法枚举所有文件格式,默认开启类型如下 mp3...(内置LibreOffice优先) 优化启动Office进程改同步执行 目前项目支持windows、linux、mac等多个平台,可以下载发行版,解压之后,运行bin目录下startup.bat命令安装即可

1.3K20

手把手教你打造全宇宙最强 Firefox 浏览器

如果你不太理解什么是改造成任意形态,我可以举个例子,比如我可以将 Firefox about 界面 Logo 替换成任意图片: Chrome 有这个可能?...再比如我可以将 Firefox 地址栏做成如下炫酷特效,还可以将标签页样式改造成如下“花里胡哨”样式: Chrome 有这本事?...说白了,userContent.css 可以实现和 stylus 这一类扩展同样功能,唯一区别在于 userContent.css 还可以定制 Firefox 内置页面和扩展页面的样式(比如内置新标签页...可以参考 xiaoxiaoflood/firefox-scripts[6] 这个仓库方法, 先下载压缩包 fx-folder.zip[7] 进行解压,得到这么几个文件: $ tree fx-folder...如果 userstyles.org 中提供样式不能满足你需求,你也可以自己编写样式,一切皆有可能。

1.9K30

06_Linux基础-NGINX和浏览器、网页关系-云服务器ssh登陆-安装NGINX-上传网页-压缩命令-xz-gzip-bzip2-zip-tar-配置N

nginx--》建议使用脚本安装-->启动nignx 3.上传自己网页到nginxhtml目录下 (注:scp或上传Windows【中间环节】) 4.去访问106.54.83.86 (注)脚本:...-->linux默认支持 windows能解压linux里所有的压缩文件 nginx-1.19.2.tar.gz linux里压缩文件 压缩文件红色,可执行文件绿色 zip zip zip...命令打的压缩包--》归档文件--》压缩文件--》一个压缩包里可以包含很多文件 tar是可以对文件和文件夹进行压缩 Compressed TAR Archive [compressed压缩...: 1.在windows里使用winrar软件压缩2个文件,一个是.rar格式文件,一个是.zip文件,具体压缩那个文件,你自己定义 2.将文件传输到linux系统/lianxi目录下,尝试解压...文件 8.将/lianxi下sshd_config.gz传到windows系统里看是否可以解压?

95610
领券