0

作为运行宏的结果,我有一个包含各种文件类型的文件夹:.err、.txt、.sh、.fat ..

例如,如果我希望该宏仅压缩 .fat 文件,则效果很好:

ShellStr = PathZipProgram & "7z.exe a " & " " & Chr(34) & NameZipFile & Chr(34) & " " & Chr(34) & FolderName & Chr(34) & "*.fat"

哪里(我尽量保持整洁):

  1. PathZipProgram -> 7zip 目录
  2. NameZipFile -> Output.zip 文件
  3. 文件夹名称-> Input.zip 文件

相反,如果我只想压缩其中一些文件(例如,只有 *.fat 和 *.sh)阅读 7-zip 命令行手册,似乎:

ShellStr = PathZipProgram & "7z.exe a " & " " & Chr(34) & NameZipFile & Chr(34) & " " & Chr(34) & FolderName & Chr(34) & "*.fat -i*.sh"

也应该工作,但它没有。有更多经验的人可以帮我解决这个问题吗?

4

1 回答 1

1

您可能会在 7-Zip 命令行语法中找到:

7z <command> [<switch>...] <base_archive_name> [<arguments>...]

<arguments> ::= <switch> | <wildcard> | <filename> | <list_file>

所以你只需要重复你的源内容:

ShellStr = PathZipProgram & "7z.exe a """ & NameZipFile & """ """ & FolderName & "\*.fat"" """ & FolderName & "\*.sh"""

提示:您可以转义字符串中的引号加倍。

于 2013-09-24T13:47:15.443 回答