amh Asked: 2009-05-31 08:51:22 +0800 CST2009-05-31 08:51:22 +0800 CST 2009-05-31 08:51:22 +0800 CST 如何限制 find 命令搜索仅返回在特定日期之前修改的文件? 772 我想将以下搜索限制为仅修改日期<=“2009-05-29 11:59:00”的文件 find /path -name "*.sb" ! -name "*[^0-9]*.sb" -type f -print 我正在使用 CentOS linux find 4 个回答 Voted Best Answer pgs 2009-05-31T09:00:24+08:002009-05-31T09:00:24+08:00 该命令find /path -mtime +7将为您提供超过 7 天的文件,并find ! -newer somefile为您提供超过 somefile 的文件。所以... touch -d "2009-05-29 11:59:00" timestampfile find /path -name "*.sb" ! -name "*[^0-9]*.sb" ! -newer timestampfile -type f -print Bernd Haug 2009-05-31T08:59:28+08:002009-05-31T08:59:28+08:00 !-newermt '5/29/2009 23:59:00' 应该在 BSD 上工作;在 GNU 上会有一个类似的选项。 Xerxes 2009-05-31T09:01:41+08:002009-05-31T09:01:41+08:00 find /path \ -type f \ ! -newermt "20090529 1159:00" \ -regex "./[^0-9]*.sb$" \ -print 您可以将regex放在末尾以加快命令速度(将最快的动作放在开头,最慢的放在最后)。 Matt Simmons 2009-05-31T09:03:16+08:002009-05-31T09:03:16+08:00 你想要 -mdate 查找 /path -name " .sb" !-name " [^0-9]*.sb" -type f -print -mdate -2009-05-30 这里有几个例子: http://www.softpanorama.org/Tools/Find/selecting_files_by_age.shtml http://www.schuerig.de/michael/linux/snippets.html
该命令
find /path -mtime +7
将为您提供超过 7 天的文件,并find ! -newer somefile
为您提供超过 somefile 的文件。所以...!-newermt '5/29/2009 23:59:00' 应该在 BSD 上工作;在 GNU 上会有一个类似的选项。
您可以将
regex
放在末尾以加快命令速度(将最快的动作放在开头,最慢的放在最后)。你想要 -mdate
查找 /path -name " .sb" !-name " [^0-9]*.sb" -type f -print -mdate -2009-05-30
这里有几个例子:
http://www.softpanorama.org/Tools/Find/selecting_files_by_age.shtml
http://www.schuerig.de/michael/linux/snippets.html