Windowsでファイル名のリストを使用してフォルダーからファイルを削除する方法は?


回答:


18

簡単な方法は、txtファイルを、mydel.bat削除するファイルのディレクトリで呼び出されるファイルにコピーすることです。Microsoft Wordなどのエディターを使用して、このファイルを編集します。通常^p、Wordの改行でグローバル置換を実行します。に置き換えspace/f^pdelspaceます。これは変わります

File1.bin
File20.bin
File21.bin

to(/f「読み取り専用ファイルの強制削除」の場合):

File1.bin /f
del File20.bin /f
del File21.bin /f
del

最初の行を編集してdelスペースを追加し、最後の行を削除します。

バッチコマンドを実行します。


別に明らかにwin7のdelコマンドで仕事をしません/ Yスイッチ、から、これは非常によく..おかげで働いていた
Avishking

2
これはおそらくの/f代わりに「読み取り専用ファイルを強制的に削除する」ためのはずです/y
afrazier

修正者。私は「確認アクションにプロンプトを抑止」にXCOPYおよび1つのまたは2つの他のDOSプログラムで動作/ Yを混合して
kingchris

Notepad ++など、正規表現で検索/置換を行う方法を知っているエディターでは、「^」を「del」に、「$」を「/ f」に置き換える必要があります。^は各行の先頭を表し、$-終わり。
ダンミレスク

38

これをコマンドラインに入力し、ファイルをfiles_to_delete.txt次のように置き換えます。

for /f %i in (files_to_delete.txt) do del %i

.cmdファイルに含めるのに適したバージョン(ダブル%%)およびファイル名のスペースを処理できるバージョン:

for /f "delims=" %%f in (files_to_delete.txt) do del "%%f"

1
これにより、ファイル自体ではなく、ファイルリストが実際に削除されました...リストを再度作成する必要がありました:|
アヴィシュキング

4
深くおaび申し上げます。/f旗を忘れました。
ウィリアムジャクソン

それは非常に気の利いた、コマンドラインがそのようなループをサポートしていることを知りませんでした。コマンドラインのこの複雑さおよびその他の複雑さについて、SUブログのブログ投稿を書くことをお考えですか?
イヴォFlipse

1
@Ivo:あなたはを見てみたいことがありますcomputerhope.com/batch.htmまたはsuperuser.com/questions/tagged/batchより学ぶこと。Unixのように、スクリプト(バッチファイル)でできることの多くは、コマンドラインから直接行うこともできます。
BlueRaja -ダニーPflughoeft

batファイルを作成し、2番目の例をコピーしました:result:files_to_delete.txtはまだ削除されています。(/ fフラグがある場合でも)
-bvdb

18

PowerShellを使用する:

Get-Content c:\path\to\list.txt | Remove-Item

1
バッチよりも読みやすいです。
TheLQ

将来の読者のために... >この作業を行うには、パイプ演算子をに変更する必要がありました。すなわちGet-Content c:\path\to\list.txt > Remove-Item...私は私のUNCパスに完全なUNCパスがありましたlist.txt。お役に立てれば。
-NateJ

@NateJを使用してみ>ましたが、ファイルを削除する代わりに、ファイルを作成してくれました。
ブライアンJ

@BrianJうーん、私がやったことをもう一度確認する必要があります..良いキャッチ。
-NateJ

1

私はそれがpowershellでできると思います。

Perlを知っていて、私はこの種のことのためにそれを使う傾向があります

perl -l -n -e "unlink" filenames.txt

1

最初の方法は、いくつかの変更後に機能します。

  1. メモ帳を開く
  2. del最初に追加した後に削除する必要がある拡張子を持つすべてのファイル名をコピーします

    del File1.bin
    del File20.bin
    del File21.bin
    
  3. xyz.bat同じフォルダにファイルを保存します

  4. ファイルを実行する

2
...質問内のテキストファイルには、約200個のファイル名が含まれています。del提案するように手動で追加するのに、自動化するソリューションがすでに投稿されているのはなぜですか?余談として:健全なエディターは、行末(または正規表現を使用した行開始)、マクロ、またはブロックまたは列モードの編集(多くの場合、OptionまたはAltを押しながらブロック、その後は一度に複数の行に入力するだけです)。
アルジャン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.