操作系统:Windows XP
要求:
- 支持压缩/解压缩 zip 格式
- 和 gzip 一样,可以使用原始文件名作为存档文件名,所以不需要指定存档文件名。
gzip target_folder
,所以输出将是target_folder.zip
。
答案1
7-zip具有此行为并且可以压缩/解压缩 zip 格式:
如您所见,文件扩展名已被删除,文件名的其余部分用作档案名称。
编辑:对于命令行解决方案,您仍然可以使用 7-zip。查看我的脚本这里。你可以像这样修改它:
#!C:/Perl/bin/perl.exe
use warnings;
use strict;
exit unless @ARGV;
my $path = "C:\\Program Files\\7-Zip\\7z.exe"; # modify this accordingly
my $infile = (split /\./,$ARGV[0])[0];
system("\"$path\" a $infile.zip @ARGV");
刚刚在我的 fasm 文件夹上测试了它:
答案2
您可以做的最简单的事情(如果您只想每个档案压缩一个文件或目录树)是将以下其中一行放入 7-Zip 安装目录中的批处理文件中(例如zip.bat
):
为一个压缩归档:7z.exe -tzip -r a %~n1.zip %1
对于7-Zip档案:7z.exe -r a %~n1.7z %1
然后调用:zip.bat target_folder