ハードドライブ上のフォルダーを自動的にクリーンアップするタスクをスケジュールしました。特定の日数より古いファイルを削除します。
基本的に.bat
、次のような行でいっぱいのファイルを実行します。
FORFILES /P "D:\Folder1\SubFolder1" /D -30 /C "cmd /c del /F /Q @path"
FORFILES /P "D:\Folder1\SubFolder4" /D -30 /C "cmd /c del /F /Q @path"
私は、タスクがしばしば終了しないことに気付きました。理由はわかりません。.bat
手動で実行およびフォルダが、その後クリーンアップされたときにファイルが数分で終わります。
その理由は、プロンプトが表示される場合があるためだと思います。
削除[...]よろしいですか?(Y / N):_
サブフォルダーの再帰的な削除のため。コマンドに追加/F
して/Q
切り替えたことに注意してくださいdel
。
タスクY
が表示されるプロンプトに自動的に応答することを確認するにはどうすればよいですか?または、これは私の問題を解決するためにとるべきパスではありません-私は私の.bat
ファイルを改善すべきですか?
stdoutとstderrをログファイルに記録するスクリプトを取得できますか。
—
ctrl-alt-delor 14
@richardそれをタスクに追加することをお勧めします。今後数週間でこれらのファイルを監視し、結果をお知らせします。
—
マリオ14
方法:(forfiles / d -30 / c "cmd / c del / q @file")&&(forfiles / d -30 / c "cmd / c rd / q / s @file")?
—
MAKZ 14
@MAKZいいえ、ディレクトリツリー自体は常に保持する必要があります。
—
マリオ14