批处理文件问题

时间:2013-05-10 20:51:22

标签: batch-file

我有一个批处理文件,删除.jpg文件的所有属性,然后删除该目录中的jpg。非常适合翻录音乐。我的MY MUSIC文件夹中有很多目录。我想将DelHiddenJpg.bat放在MY MUSIC目录中并运行它并让它在所有子目录中预先形成这些命令。这就是DelHiddenJpg.bat

中的内容
attrib -S -H *.jpg
Del *.jpg

无论如何要做到这一点而不必在每个子目录中删除DelHiddenJpg.bat

1 个答案:

答案 0 :(得分:4)

attrib /S递归地执行子目录。

del /S也递归地执行子目录。

因此,如果你想坐在“我的音乐”目录中并进行递归删除,你可以这样做

attrib /S -S -H *.jpg
del /S *.jpg

还有del /F - 强制删除 - 这可能允许您删除而不首先更改属性。

同时检查del /Q - 安静模式 - 这会抑制删除(是/否)问题。

顺便说一句,attrib -S(与attrib /S不同)删除了系统属性 - 不确定为什么你的jpgs会设置系统属性。

另一方面,如果我误解了你的问题并且你不想做一个递归删除,但是想一次只做一个目录,但又不希望有一个批处理文件的副本每个子目录,这就是你可以做的。

  • 您的批处理文件应该包含原始命令(不含/S
  • 将批处理文件保存在任何特定目录中(例如,在c:\binc\batch中)并将此目录添加到您的路径中 - 如果需要,可以从控制面板 - >系统执行此操作它将自动设置为打开的任何新命令窗口。
  • 无论您想要在哪个目录中运行它,只需cd到该目录并运行DelHiddenJpg - 它将从路径中选取。