使用批处理文件压缩文件夹内的所有文件和子目录

时间:2016-06-29 00:13:31

标签: batch-file cmd window zip winrar

我编写了以下脚本来压缩文件夹中的所有文件和子目录。但我只是压缩了子目录。我在这做错了什么?请指教。

FOR /D %%i IN ("*") DO "C:\Program Files (x86)\WinRAR\WinRAR.exe" a ../../../apps-1.0.2.zip "%%~fi\"

1 个答案:

答案 0 :(得分:1)

试试这个例子并告诉我结果:

  

-R Switch:用于重复出现子文件夹

     

-AF <Type>开关:指定存档格式

     

-EP1开关:排除基本文件夹的名称

     

-DH Switch:打开共享文件:可以处理其他应用程序打开的文件。   如果应用程序允许访问文件读取,则此开关很有用,但如果禁止所有访问,则打开的文件始终会失败。

@echo off
Set Winrar=%ProgramFiles%\WinRAR\WinRAR.exe
Set MyFolder=%USERPROFILE%\Favorites
Set ArchiveName=apps-1.0.2.zip
"%Winrar%" a -r -afzip -ep1 -dh "%ArchiveName%" "%MyFolder%"
pause

编辑于2016年6月29日@ 13:30

对于其他开关和命令,您可以执行此批处理以打开Winrar的帮助文件:

@echo off
Set WinrarHelp=%ProgramFiles%\WinRAR\WinRAR.chm
Start "" "%WinrarHelp%"