人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linuxのコマンドラインで特定の日付だけ(もしくは日付以前)のファイルを削除する方法はありますか?

●質問者: fukut77
●カテゴリ:コンピュータ
✍キーワード:Linux コマンドライン ファイル
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● ys_y
●10ポイント

http://www.sixnine.net/roadside/find.html#2.3.

"Trumps by the roadside" - ちょっとだけカッコよく find(1) を使う

find . -ctime +7 -exec rm {} ¥;

でどうでしょうか。

-ctime +7 で7日前以上のファイルを検索し、-exec にそのファイルを rm コマンドに渡してます。少し性能は悪いと思いますが。


2 ● gaba
●10ポイント

http://x68000.startshop.co.jp/~68user/unix/pickup?keyword=find&t...

$ find ./ -ctime +2 | xargs rm

上記は二日前以前に更新されたファイルを全て削除します。

詳しくは find のオプションを確認して下さい。

一度

$ find ./ -ctime +2

とだけ実行して、削除されるファイルを確認した方が良いでしょう。


3 ● aki73ix
●25ポイント

http://www.unixuser.org/~euske/doc/unixsem/chap1.html

UNIX Seminer (1)

Shell Script で ls を -lRaで 再帰ループさせながら awkで日付部分の一致を確認して( grep で抽出するとフォルダの特定をするScriptを組むのが難しい)rm コマンドで削除するのがいいと思います


4 ● kiichigo
●25ポイント

http://homepage1.nifty.com/mcn/linux/topic2.4/find.htm

2週間より前のバックアップファイルを問答無用で削除します

-exec パラメータにてコマンドを実行することが出来ます。

-mtime パラメータを「+14」に指定した場合、14日より前の全てのファイルが対象となり、「-14」と指定した場合、現在から14日までの間のファイルが対象となります。

find . -name ”*.back” -mtime +14 -exec rm -f {} ¥;

◎質問者からの返答

ありがとうございます

早速やってみます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ