前言
Windows有一个自带的简单的压缩命令makecab
和解压命令expand
,但是这个命令的功能简单到一般人都不想用它。
推荐使用开源、强大、小巧的绿色软件7z.exe
来实现相关功能,虽然它名字叫7z,它不仅可以解压缩7z,也可以解压缩zip。为什么不用winrar呢?这玩意他妈的收费啊!
自带命令makecab和expand
单个文件
压缩一个文件:
makecab e:/test.txt e:/test.zip
解压一个文件:
expand e:/test.zip e:/test.txt
多个文件
假设现有文件夹test:
E:\test\文件1.txt
E:\test\文件2.txt
E:\test\abc\文件3.txt
要压缩整个文件夹需要将test下所有文件列一个清单,比如E:\list.txt
:
test\文件1.txt
test\文件2.txt
test\abc\文件3.txt
执行:
makecab /f F:\list.txt
最后生成一个cab文件,改后缀为zip即可,而且生成的zip内部文件全部在同一个文件夹下,所以makecab
这个命令一般很少用来压缩zip。
解压(输出文件夹必须存在,否则不成功):
expand -F:* test.zip E:\output\
使用7z命令行解压缩zip
7z很强大,而且免费开源。官网下载安装文件,比如叫7z1604-x64.exe
,安装完成之后,只需要用到里面的一个7z.exe
和7z.dll
即可,其它文件都可以删除。
建议将这2个文件复制到某个环境变量目录下(如C:\Windows\System32
),以便以后随时随地使用。
压缩:
7z a test.zip a.txt b.txt # 指定若干文件
7z a test.zip f:/test/** # 压缩文件夹
解压:
7z x test.zip -of:\test # -o表示输出目录,注意其与目录路径之间没有空格
7z x test.zip -o"f:\test abc" # 假如输出文件夹有空格,用引号包裹
如果要压缩成7z格式,只需将输出文件后缀改成7z即可,它会自动根据后缀使用不同压缩方式。