这列出了最后一天(24小时)修改过的文件,-mtime -1
,其名称中包含字符串“UGW”,-name '*UGW*'
:
find ./ -mtime -1 -type f -name '*UGW*' -printf '%Tc %p\n' | sort
是否有一种简单的方法可以修改它,以便我只列出最后X天但今天排除?
注意: 我在这里排序,但我认为这不是按时间戳正确排序。
EDIT1 基于以下的anser获得以下错误
:~/tmp$ find ./ -mtime -1 -type f -name '*' -printf '%Tc %p\n' Tue 08 Mar 2016 12:25:01 NZDT ./compareKPIs-log
Mon 07 Mar 2016 18:05:02 NZDT ./log-file
Tue 08 Mar 2016 12:25:01 NZDT ./compareKPIs-error
Mon 07 Mar 2016 18:05:02 NZDT ./backup_public_html_20160307.tgz
:~/tmp$ comm -13 <(find ./ -daystart -mtime -1 -type f -printf '%Tc %p\n' ) <(find ./ -daystart -mtime -3 -type f -printf '%Tc %p\n' )
Sun 06 Mar 2016 18:05:00 NZDT ./backup_public_html_20160306.tgz
comm: file 2 is not in sorted order
Mon 07 Mar 2016 18:05:02 NZDT ./log-file
comm: file 1 is not in sorted order
Mon 07 Mar 2016 18:05:02 NZDT ./backup_public_html_20160307.tgz
答案 0 :(得分:0)
***编辑:实际的方法:
find ./ -daystart -mtime -3 -type f ! -mtime -1 -printf '%Tc %p\n'
用途:
! -mtime -1
今天要排除-daystart
从00:00开始真的很讨厌,但是
呢comm -13 <(find ./ -daystart -mtime -1 -type f -printf '%Tc %p\n' | sort) <(find ./ -daystart -mtime -3 -type f -printf '%Tc %p\n' | sort)
comm
的命令行选项为:
-1 suppress column 1 (lines unique to FILE1)
-2 suppress column 2 (lines unique to FILE2)
-3 suppress column 3 (lines that appear in both files)