我想删除当前文件夹和所有子文件夹中的所有jpg
,ini
和更多类型,然后删除所有空文件夹(递归)。其中一些文件是只读或隐藏的,甚至设置为系统,因此只有del /s *.jpg
不会删除它们。问题是,当我这样做时,它看起来像语法使用逻辑and
:del /a:h /a:r /s *.jpg
所以只有只读和隐藏的文件被删除,但不仅仅是隐藏的文件。有没有办法让它使用逻辑or
代替?删除所有设置为隐藏或只读的文件或系统
我无法找到示例使其工作,而无需复制粘贴相同线条的小改动。
关于rmdir
,我必须做cd
到当前文件夹吗?因为它说,有一个在下面的代码语法错误:
del /s *.jpg
del /a:h /a:r /s *.jpg
rmdir /s /q
pause
EDIT3:我想,现在它删除的一切:del /s /f /a:h /a:a *.jpg
我发现这个去除空文件夹,但它不一样,如果工作文件夹设置为只读:
https://superuser.com/a/39679/451485
您需要使用'rmdir'指定要删除的目录。您不能删除当前目录。您需要切换到其他目录,这不是目录的子目录,然后使用目录名称将其删除。所有你需要的是'rmdir/s/q c:\ foo'。它将删除目录'c:\ foo'和所有子目录中的所有内容,包括只读,隐藏或系统文件。 –
@RossRidge我想删除当前和所有子文件夹中的空文件夹。不是'rmdir'与bash中的相同,只删除空文件夹? – shinzou
'rmdir/s/q'就像'rm -rf'。它消除了一切。 –