回答:
最近のバージョンfind
(GNU 4.4.0など)では、この-newermt
オプションを使用できます。たとえば、2011-02-08に変更されたすべてのファイルを検索するには
$ find /var/www/html/dir/ -type f -name "*.php" -newermt 2011-02-08 ! -newermt 2011-02-09
また、findは-name
オプションであなたのためにそれを行うことができるので、phpファイルを見つけるためにgrepにパイプする必要がないことに注意してください。
より多くの提案については、このSOの回答をご覧ください:「find」を使用して特定の日に作成されたファイルを検索する方法は?
迷惑なことに、standardには直接的な方法はありませんfind
。find
GNUシステム上の最近のバージョン(たとえば、非組み込みLinux、Cygwin)および一部の* BSDには、ファイルの日付と綴られた日付を比較するなどのオプション-newermt
があります。
standard find
では、ファイルの日付を現在の日付(-mtime
)または固定ファイルと比較するだけです。この場合、通常、現在の日付は役に立ちません(実行した時点からさかのぼってカウントされます)find
ほとんどのアプリケーションではカレンダーの日付が必要コマンドます)。これにより、範囲を定義する一時ファイルを作成する手間がかかります。
touch -t 201103070000 start.tmp
touch -t 201103080000 stop.tmp
find . -newer start.tmp \! -newer stop.tmp -print
rm start.tmp stop.tmp