forfile命令删除除目录外的所有内容
Forfile command to delete all except a directory
我想使用forfile
命令删除某些目录中的所有.frm 文件。但是,我不想删除特定目录下的 *.frm 文件。
我有这个,但我不知道如何把我不想删除文件的目录名称:
forfiles /p D:\myfolder\ /s /m *.frm /c "cmd /c IF NOT DESIRE_DIR del @PATH"
请帮忙!
@for /f "delims=" %A in ('dir /ad /b^|findstr /l /v /i "Dirname1 Dirname2"') do @echo %A
这也比 forfiles
快很多。 Forfiles
只有在按日期列出文件时才真正有用。
将您的文件夹名称放入 Dirname1
、Dirname2
以排除它们。空格表示或。
记得在批处理文件中 %A
变成 %%A
.
forfiles /p D:\myfolder\ /s /d -7 /m *.frm /c "cmd /c echo @path >> %temp%\temp.txt"
for /f "delims=" %A in ('findstr /i /v "list of excluded directories" ^< "%temp%\temp.txt"') do echo %A
你的 /m
也放错了地方,你会看到一条消息告诉你。
我想使用forfile
命令删除某些目录中的所有.frm 文件。但是,我不想删除特定目录下的 *.frm 文件。
我有这个,但我不知道如何把我不想删除文件的目录名称:
forfiles /p D:\myfolder\ /s /m *.frm /c "cmd /c IF NOT DESIRE_DIR del @PATH"
请帮忙!
@for /f "delims=" %A in ('dir /ad /b^|findstr /l /v /i "Dirname1 Dirname2"') do @echo %A
这也比 forfiles
快很多。 Forfiles
只有在按日期列出文件时才真正有用。
将您的文件夹名称放入 Dirname1
、Dirname2
以排除它们。空格表示或。
记得在批处理文件中 %A
变成 %%A
.
forfiles /p D:\myfolder\ /s /d -7 /m *.frm /c "cmd /c echo @path >> %temp%\temp.txt"
for /f "delims=" %A in ('findstr /i /v "list of excluded directories" ^< "%temp%\temp.txt"') do echo %A
你的 /m
也放错了地方,你会看到一条消息告诉你。