Skip to main content

find. mtime と mmin

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

Linux

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

まず

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

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

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

bash
mmin -180 -mmin +60

※ 確認用コマンド

  • テストデータ(ダミーファイル)つくる
bash
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
  • テストするコマンド
bash
find . -type f -name '2*.txt' <ここにmminとか入れる> | xargs -r ls -l --time-style=full-iso