INフォルダにあるファイル名の一部をB、Cフォルダで検索し、Bフォルダになければ
INフォルダにあるファイルを削除するバッチファイルの記述方法について教えてください。
例>
INフォルダ
C:\Users\Desktop\IN
|
|------9012_test.txt
|
|------1234_abcd.xls
Bフォルダ
C:\Users\Desktop\1234|
|
|------DEFフォルダ------abcd.xls
Cフォルダ
C:\Users\Desktop\9012
|
|------GHIフォルダ
|
|------SAMPLEフォルダ------TESTフォルダ
上記の場合、1234_abcd.xlsはBフォルダ(1234)フォルダ配下に存在しているので
INフォルダから削除しない、9012_test.txtはCフォルダ(9012)フォルダ配下に存在していないので
INフォルダから削除する。
1.INフォルダのファイル名の先頭には必ずC:\Users\Desktop\〇〇〇〇\の所属ディレクトリ名(数字)が
付与され、INの直下に配置されている
2.INフォルダにあるファイル名はB、Cフォルダのサブディレクトリのどこかに存在するかもしれない
以下記述を試しましたが、これではサブフォルダの検索まではしてくれません。
cd C:\Users\Desktop\IN
for /F "tokens=1* delims=" %A in ('dir /B *.') do if not exist C:\Users\Desktop%A%B (
del "%A_%B"
)
何か良い記述がございましたらお知恵をお貸しください。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。