[解決済み] n日以上前のディレクトリを削除するシェルスクリプト
2022-05-03 15:33:57
質問
という名前のディレクトリがあります。
2012-12-12
2012-10-12
2012-08-08
bashシェルスクリプトで10日以上前のディレクトリを削除するにはどうすればよいでしょうか?
どのように解決するのですか?
これは、あなたのために再帰的にそれを行います。
find /path/to/base/dir/* -type d -ctime +10 -exec rm -rf {} \;
説明する。
-
find
ファイル/ディレクトリ/リンクなどを検索するためのUNIXコマンドです。 -
/path/to/base/dir
: 検索を開始するディレクトリを指定します。 -
-type d
: ディレクトリのみ検索 -
-ctime +10
: 変更時間が10日以上古いものだけを考慮する -
-exec ... \;
: そのような結果が見つかるたびに、次のコマンドを...
-
rm -rf {}
: 再帰的にディレクトリを強制削除します。{}
の部分は、前の部分から検索結果が代入されるところです。
または、使用してください。
find /path/to/base/dir/* -type d -ctime +10 | xargs rm -rf
という量になるので、もう少し効率的です。
rm -rf dir1 dir2 dir3 ...
とは対照的です。
rm -rf dir1; rm -rf dir2; rm -rf dir3; ...
のように
-exec
メソッドを使用します。
最近のバージョンでは
find
に置き換えることができます。
;
で
+
と同等のことをするようになります。
xargs
を呼び出し、各execシステムコールで収まるだけのファイルを渡します。
find . -type d -ctime +10 -exec rm -rf {} +
関連
-
[解決済み] Bashスクリプトのset -o pipefailの意味を教えてください。
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashスクリプトからプログラムが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashで文字列をデリミターで分割するには?
-
[解決済み] ディレクトリが存在しない場合のみmkdirする方法は?
-
[解決済み] Bashでコマンドの出力に変数を設定するにはどうすればよいですか?
-
[解決済み] Bashでファイルの中身をループする
-
[解決済み] LinuxのシェルスクリプトでYes/No/Cancelの入力を促すにはどうしたらいいですか?
-
[解決済み] シェルスクリプトでYYYY-MM-DD形式の日付にする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】bashでjsonファイルを解析するために、jqの出力にあるダブルクオートを削除する方法は?
-
[解決済み] osx find exec rm find: exec: 不明な主またはオペレータ
-
[解決済み] Bashでの動的な変数名
-
[解決済み] zip警告 - 名前が一致しない
-
[解決済み] ssh / リモートbashコマンドでシングルクォート文字をエスケープするにはどうすればよいですか?
-
[解決済み] プロジェクトからすべての .pyc ファイルを削除するにはどうすればよいですか?
-
[解決済み] nohupプロセスを終了させる方法を教えてください。
-
[解決済み] IPアドレスのまとめ方
-
[解決済み] rm, cp, mvコマンドで引数リストが長すぎるというエラーが発生する。
-
[解決済み] Unixでシェルスクリプトを使って10日以上前のファイルを削除する [重複]。