我需要创建一个batch command
保留所有相同扩展名的文件并删除其余文件。
For example
,我有一个名为Photograph on desktop
. 它包含所有.png
格式的图片。但是,在这些文件中,我想保留birds.png
并删除其余的图片。我怎样才能做到这一点?
我需要创建一个batch command
保留所有相同扩展名的文件并删除其余文件。
For example
,我有一个名为Photograph on desktop
. 它包含所有.png
格式的图片。但是,在这些文件中,我想保留birds.png
并删除其余的图片。我怎样才能做到这一点?
很容易。使用for /r
循环
for /r "Photograph" %%a in (*) do (
if %%~na NEQ [file to keep e.g. bird] del "%%a"
)
从桌面运行它,它将删除放在“Photograph”文件夹中的所有文件,除了放在指定位置的文件名。
我自己试过了,效果很好。如果您还需要什么,请告诉我,
你的莫娜
forfiles /p "[pathtofile including file itself]" /c "cme.exe /c if @fname NEQ "bird" del @path"
那应该行得通。
不要在您需要的文件夹之外的任何其他文件夹中运行它。:)
@echo off
attrib +h bird.png
del *.png
attrib -h bird.png
@echo off
if NOT EXIST %2 (
echo "Usage: allBut.bat <pattern> <filename>
goto:end
)
for %%f in (%1) do (
IF NOT %%f==%2 (
echo Deleting %%f because it is not %2
del %%f
)
)
e.g. allBut *.png bird.png