-PR-
解決済み

シェルスクリプトで古いファイルの自動削除をするには?

  • 困ってます
  • 質問No.56928
  • 閲覧数9153
  • ありがとう数5
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 92% (78/84)

UNIXで以下の仕様を持つシェルスクリプトを作成しようと
していますが、どうもうまくいきません。
どなたか、いい知恵を貸していただけないでしょうか?

目的:
特定のディレクトリ内にあるファイルについて、
システム日付より3日前のタイムスタンプを持つファイルを
削除する。

留意点:
・削除対象のファイルは複数存在する場合がある。
・ファイルサイズは1件あたり 0byte-数百Mbyte となる
 可能性がある。
・ファイル名は不定。
・スクリプトはBシェルまたはCシェルとする。

参考:
・現在使用しているOSについて
 ls -l でのタイムスタンプにおける出力形式は以下のとおり
 (デフォルト値?)
 ・ 9月 28日 2000年    または
  10月 24日 10時45分

知っている限りのコマンドを使っていろいろやってみたんですが、
結局ダメでした。
よろしくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル8

ベストアンサー率 46% (22/47)

-type fも必要でした。

find somedir -type f -mtime +3 -exec rm {} \;

でいきましょう。
とりあえず、テストは

find somedir -type f -mtime +3 -print

でちゃんと該当するファイルが表示されるれば-exec rm {} \;にしても大丈夫。
日付まで確認したければ、

find mydir -type f -mtime +3 -exec ls -la {} \;

詳しくは、find(1)のmanをどうぞ。
お礼コメント
chaff

お礼率 92% (78/84)

ありがとうございます。
findで抽出可能とは知りませんでした。
なりほどぉ。-mtime ですか!!

ありがとうございました。大変助かりました。
投稿日時 - 2001-03-28 12:04:03
関連するQ&A
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル8

ベストアンサー率 46% (22/47)

なんでスクリプトが必要かな。 find directory -mtime +3 -exec rm {} \; ...続きを読む
なんでスクリプトが必要かな。

find directory -mtime +3 -exec rm {} \;
お礼コメント
chaff

お礼率 92% (78/84)

>なんでスクリプトが必要かな。
その通りですね。find っていろいろできるんですねー
投稿日時 - 2001-03-28 12:07:52


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ