我已经search了如何使用7z压缩文件/文件夹在Windows CMD,我已经find了压缩的方式:zip,tar,7z,..等但不是.tar.gz或.tar.bz2
这里是我用户的文档: http : //www.dotnetperls.com/7-zip-examples
这是我使用的命令:
for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a -t7z "%%X.7z" "%%X\"
将“%% X.7z”“-t7z”中的“7z”更改为所需的扩展名,即可获得所需的结果。 但不幸的是,这种方式不适用于.tar.gz
我需要使用gzip压缩和不知道如何,当然在CMD。 任何方式? 我确定有一种方法使用7z bot如何? 如果有替代品,那就好了
解决了。 您可以通过编写具有以下内容的CMD批处理文件来完成此操作:
for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a -ttar "%%X.tar" "%%X\" for %%X in (*.tar) do "c:\Program Files\7-Zip\7z.exe" a -tgzip "%%X.gz" "%%X"
请注意,如果您试图在交互式CMD控制台中直接执行此操作,则应删除双%
符号。
使用7-Zip 9.20,你可以避免for循环在名字结尾添加\,这对我有用:
set "_dir=%1"
set "_7zexe=c:\<my-7z-dir>\7z.exe"
"%_7zexe%" a -ttar %_dir%.tar %_dir%\
"%_7zexe%" a -tgzip %_dir%.gz %_dir%.tar
.tar.gz
实际上是两种格式。 TAR
是一个包含多个文件的未压缩归档文件。 GZIP
是一个包含单个tar
文件的压缩文件。
所以你需要在命令行上分两步进行
例如,将文本文件添加到files.tar.gz
7z.exe a -ttar files.tar *.txt 7z.exe a -tgzip files.tar.gz files.tar
这是一个单行的:
7za a dummy -ttar -so @filelist | 7za a pack.tgz -sipack.tar -tgzip -mx9
要么
for /d %%X in (*) do ( 7za a dummy -ttar -so "%%X\" | 7za a %%X.tgz -tgzip -si%%X.tar )