2013-05-10 157 views
1

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

attrib -S -H *.jpg 
Del *.jpg 

反正有做到这一点,而无需在每个子目录下降DelHiddenJpg.bat

回答

4

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

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

所以,如果你想在“我的音乐”目录坐下来执行递归删除,你可以做

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

还有del /F - 强制删除 - 这让您可以删除不改变attribs第一。

另请选择del /Q - 安静模式 - 这会抑制删除(是/否)问题。

顺便说一句,attrib -S(不同于attrib /S),删除系统attrib - 不知道为什么你的jpgs将设置系统属性。另一方面,如果我误解了你的问题,并且你不想做递归删除,但是想一次只做一个目录,但不想拥有批处理文件的副本在每个子目录中,这是你可以做的。

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