我有一个文件夹,每当我运行脚本时都在其中创建文件。首次运行时,它将创建demo_1.txt
。下次运行时,它将创建demo_2.txt
。依此类推。
我想根据时间戳读取最新创建的文件。
如果您在下面看到,根据时间戳记,最新创建的文件是demo_4.txt
。那就是我要读取的文件。
demo_1.txt => timestamp 8:00
demo_2.txt => timestamp 8:02
demo_3.txt => timestamp 8:03
demo_4.txt => timestamp 8:04
这只有一半有效。它读取 all 个文件,并将它们附加到file.txt
。
find . -iname 'List*' -cm -60 -exec cat '{}' >> file.txt
如何修复它以仅获取最新文件?
答案 0 :(得分:1)
stat * -c "%y-%n" | sort -r
将列出当前目录中的所有文件,并按上次数据修改时间的降序排列。
如果您只需要最后修改的文件,则相应的命令应为
stat * -c "%y-%n" | sort -r | head -n 1
或
stat * -c "%y-%n" | tail -n 1