
パスとファイル名がファイルに保存されているファイルを削除するための次のバッチ ファイルがあります。これは正常に動作します。削除するファイルのパスとファイル名を DELETE-ALL.txt に入力すると、バッチ ファイルによって削除されます。たとえば、ファイルにエントリ「download\test.txt」がある場合、複数のドライブから削除されます。
ただし、問題が 1 つあります。エントリがファイル名なしで「download\」だけの場合、「download\」の下にあるすべてのファイル (フォルダーを除く) が削除されます。これは確かによくありません。とにかく、バッチ ファイルを変更して、「\」の後に何もないエントリ (「\」で終わるエントリ) を無視するようにできますか? または、同じことを実現する他の方法があるでしょうか?
@REM This script deletes files which include path.
@ECHO Working...
@if exist C:\DELETE-ALL-LOG.txt DEL /Q C:\DELETE-ALL-LOG.txt
@(@for /f "tokens=1 delims=;" %%A in ( C:\DELETE-ALL.txt) do @(
@DEL /Q /A "D:\%%A"
@DEL /Q /A "E:\%%A"
@DEL /Q /A "K:\%%A") >> C:\DELETE-ALL-LOG.txt 2>&1)
@endlocal
@CD /D C:\
@echo Done.