GNU/Linux >> Linux の 問題 >  >> Linux

指定された時間よりも新しいすべてのファイルを再帰的に見つける

touch のため、これは少し遠回りです。 生の time_t を取りません 価値がありますが、スクリプトでかなり安全に仕事をするはずです。 (-r date へのオプション MacOS X に存在します。私は GNU を再確認していません。) touch に直接コマンド置換を記述することで、'time' 変数を回避できます。 コマンドライン。

time=$(date -r 1312603983 '+%Y%m%d%H%M.%S')
marker=/tmp/marker.$$
trap "rm -f $marker; exit 1" 0 1 2 3 13 15
touch -t $time $marker
find . -type f -newer $marker
rm -f $marker
trap 0

次の例を使用して、前日に作成/変更されたすべてのファイルを見つけることができます:

find /directory -newermt $(date +%Y-%m-%d -d '1 day ago') -type f -print

先週のすべてを検索するには、「1 週間前」または「7 日前」を使用します。


たぶん誰かがそれを使うことができます。特定の時間枠内に変更されたすべてのファイルを再帰的に検索し、実行するだけです:

find . -type f -newermt "2013-06-01" \! -newermt "2013-06-20"

Linux
  1. Linuxですべてのディレクトリのファイルを再帰的に検索する方法

  2. 最大のファイルを再帰的に検索しますか?

  3. ディレクトリ内のファイル サイズがゼロ (0) バイトのすべてのファイルを再帰的に検索する方法

  1. symlink ディレクトリ内のファイルを含む、ディレクトリ内のすべてのファイルを再帰的に一覧表示する

  2. bash のすべてのサブディレクトリにあるすべてのファイルを gzip する方法

  3. 日付範囲内で作成されたファイルを検索

  1. Linuxで1GBサイズを超えるすべてのファイルを見つける方法は?

  2. X よりも古いすべてのファイルを含むディレクトリを検索しますか?

  3. Linux ですべての空のファイルとディレクトリを再帰的に削除するにはどうすればよいですか?