如何使 compact.exe 仅压缩文件夹而不压缩文件?

如何使 compact.exe 仅压缩文件夹而不压缩文件?

我的磁盘上有一个庞大而复杂的嵌套文件夹结构。比如说,

Folder1
<many files>
  Subfolder1
  <many files>
  Subfolder2
  <many files>
  ...
  SubfolderNNN

压缩所有文件需要几个小时,所以我想只在文件夹上设置压缩属性。这样现有文件将保持不变,但将来添加的新文件将被压缩。

有没有办法使用compact.exe命令行来实现?

答案1

从 的输出中可能不完全清楚compact /?,但是当您使用 时compact /c C:\somefolder,只设置文件夹的压缩属性,而文件夹内的文件保持其当前压缩属性不变。

您想要做的是:
compact /c Folder1 cd Folder1 for /f "delims=" %i in ('@dir /b /s /a:d') do compact /c "%i"

如果您稍后想要压缩所有文件,请重复后两个命令,但省略/a:d

相关内容