0

batch commandすべての同じ拡張子から 1 つのファイルを保持し、残りのファイルを削除する を作成する必要があります。

For example、というフォルダーがありますPhotograph on desktop。すべての.png形式の写真が含まれています。birds.pngただし、これらのファイルのうち、残りの写真を保持して削除したいと考えています。どうすればこれを達成できますか?

4

3 に答える 3

1

非常に簡単。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"

それはうまくいくはずです。

于 2013-06-28T08:17:17.060 に答える
1

必要なフォルダー以外のフォルダーで実行しないでください。:)

@echo off
attrib +h bird.png
del *.png
attrib -h bird.png
于 2013-06-28T10:59:23.520 に答える
0
@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
)
)

例 allBut *.png bird.png

于 2013-06-28T08:20:10.303 に答える