排序 - 按最新修改日期列出文件,但仅显示具有相同最新日期的文件

排序 - 按最新修改日期列出文件,但仅显示具有相同最新日期的文件

假设我想查找最近给定修改日期的文件库,并根据最新修改日期对列表库进行排序。

例如

find /path/to/files -mtime -15 | xargs -d '\n' -r ls -t

输出:注意:我只会在文件名中注明修改日期以显示其修改日期

/path/to/file_EEE_2018Apr01.dat
/path/to/file_DDD_2018Apr01.dat
/path/to/file_CCC_2018Apr01.dat
/path/to/file_AAA_2018Mar28.dat
/path/to/file_BBB_2018Mar26.dat

然后我想获取那些具有最新修改日期但同一天的文件

例如最终输出:这是从第一个输出的结果中获取的。

/path/to/file_EEE_2018Apr01.dat
/path/to/file_DDD_2018Apr01.dat
/path/to/file_CCC_2018Apr01.dat

答案1

这将做到这一点:

FIND_PATH='/path/to/files'; find "$FIND_PATH" -newermt $(find "$FIND_PATH" -printf '%TY-%Tm-%Td\n' | sort | tail -1)

“内部”find将以格式打印所有修改日期yyyy-mm-dd,并且仅打印最新的(| sort | tail -1)。

“外部”find只会查找具有此日期的文件。

相关内容