• ベストアンサー

findコマンド

findコマンドを用いて”昨日以降に変更・更新のあったファイル”を検索するにはどうしたらよいでしょうか? ご教授ねがいます。 また、-ctime、-atimeを用いたときの日付の±はどういう意味になるのでしょうか? 上記質問とあわせて教えていただければ幸いです。

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

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

> findコマンドを用いて”昨日以降に変更・更新のあったファイル”を検索するにはどうしたらよいでしょうか? -mtime などは、24時間単位なので、日付をベースにした検索が出来ませんね。 そういう場合には、-newer を使います。 例えば、昨日(1/24)以降、つまり 2002-1-24 0:00 よりも後に触ったファイルを探すときには、まず、 touch コマンドで 2002-1-23 23:59 のファイルを作っておいて、それよりも新しいファイルを 探します。 % touch -t 01232359 KEY % find DIR -newer KEY -print という感じ。touch のオプション指定は、幾つか方言があるのでマニュアルを見てください。

その他の回答 (1)

  • mars1943
  • ベストアンサー率72% (13/18)
回答No.1

まず、±についてですが、 atim,ctimeとも n*24時間前にアクセス、ステータス変更が行われた時に真が返ります。 +nの場合、nより大きい範囲となり、 +1の場合、一日以上前ということになります。 -nの場合、nより小さい範囲となり、 -1の場合、一日以内ということになります。 で、昨日以降に変更・更新があったファイルという指定の場合、最後にファイルが修正された時間を対象とする、mtimeというオプションが使えるかと思います。 なので、 find DIRNAME -mtime -1 -print と入力すれば、現在より24時間以内に変更されたファイル名が取得できます。

関連するQ&A