1. ホーム
  2. windows

[解決済み] N日以上前のファイルを削除するバッチファイル

2022-03-14 06:15:24

質問

バッチファイルで7日以上前のファイルを全て削除する方法を探しています。 ウェブで検索したところ、数百行のコードを含む例や、タスクを達成するために追加のコマンドライン ユーティリティをインストールする必要がある例などが見つかりました。

似たようなものには BASHでできること をわずか2行のコードで実現しました。少なくとも、Windowsのバッチファイルについては、遠隔的に簡単なことができそうです。私は、余分なユーティリティなしで、標準的なWindowsコマンドプロンプトで動作するソリューションを探しています。PowerShellやCygwinも使わないでください。

解決方法は?

お楽しみください。

forfiles -p "C:\what\ever" -s -m *.* -d <number of days> -c "cmd /c del @path"

参照 forfiles ドキュメント をご覧ください。

より良いものを提供するために Windows XPのコマンドラインの五十音順索引 .

がない場合は forfiles がインストールされているマシンで、任意の Windows Server 2003 にあるWindows XPマシンに %WinDir%\system32\ . このEXEは、Windows Server 2003とWindows XPの間で完全な互換性があるため、これが可能です。

それ以降のバージョンのWindowsおよびWindows Serverでは、デフォルトでインストールされています。

Windows 7以降(Windows 10を含む)の場合。

構文が少し変更になりました。したがって、更新されたコマンドは次のとおりです。

forfiles /p "C:\what\ever" /s /m *.* /D -<number of days> /C "cmd /c del @path"