# find. mtime と mmin

TODO: いつもわからなくなるので整理する

# Linux

find . -type f -name '*.log' <ここにmminとか入れる>

まず

意味 オプション メモ
-mtime N 日を指定 -mday ではない
-mmin N 分を指定 -mmax とかはない
意味 オプション メモ
--------------------- ----------- ----------------------------------------------
.. N+1 日前 -mtime +N 昔ぶん全部
N+1 日前 .. N 日前 -mtime N 1日分
N 日前 .. -mtime -N 未来ぶん全部。 マイナスつけたほうが未来である
  • daystart ありの場合はその日の 0 時から。なしの場合は 現在時刻から。
  • daystart は mtime とか mmin の前に書く。

範囲を指定する場合は複数指定

例:1時間前から3時間前

mmin -180 -mmin +60

※ 確認用コマンド

  • テストデータ(ダミーファイル)つくる
for N in `seq 0 10`
do
  DT=`date -d "$N days ago" +%Y%m%d`
  for TM in 000000 120000 235959
  do
    touch -t $DT`echo $TM| perl -pe 's/(....)(..)/\1.\2/'` ${DT}_${TM}.txt
  done
done
  • テストするコマンド
find . -type f -name '2*.txt' <ここにmminとか入れる>| xargs -r ls -l --time-style=full-iso

[ 📩 ご意見 ]