简体   繁体   中英

Finding Files in Linux based on Modification TIme

假设在同一天修改/创建了文件,是否有办法在Linux中获取仅具有修改时间(例如大于5 am)的文件。

If you have GNU find then you can do:

find . -name "*" -type f -newermt "2014-04-04 05:00:00"

From man page:

-newerXY reference Compares the timestamp of the current file with reference. The reference argument is normally the name of a file (and one of its timestamps is used for the comparison) but it may also be a string describing an absolute time. X and Y are placeholders for other letters, and these letters select which time belonging to how reference is used for the comparison.

  a The access time of the file reference B The birth time of the file reference c The inode status change time of reference m The modification time of the file reference t reference is interpreted directly as a time Some combinations are invalid; for example, it is invalid for X to be t. Some combinations are not implemented on all systems; for example B is not supported on all systems. If an invalid or unsupported combination of XY is specified, a fatal error results. Time specifications are interpreted as for the argu‐ ment to the -d option of GNU date. If you try to use the birth time of a reference file, and the birth time cannot be deter‐ mined, a fatal error message results. If you specify a test which refers to the birth time of files being examined, this test will fail for any files where the birth time is unknown. 

You can find file modified in the last day find / -type f -mtime -1

or

##  (year 2014 April day 05 time 05:00:00)
touch -t 201404040500.00 ~/myfile

## Find all files newer then myfile 
find / -newer ~/myfile

Hope that helps

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM