在文件夹结构中查找同一文件的最新副本

在文件夹结构中查找同一文件的最新副本

我需要获取文件夹结构中 foo.txt 的路径。此结构中有多个 foo.txt 文件,但我需要自动查找最新的文件。建议?

答案1

find . -iname foo.txt -exec ls -t "{}" \+ | head -n 1

答案2

这是一个案例zsh 的 glob 限定符如果我见过一个。

cat **/foo.txt(om[1])
  • om按年龄的增加对文件进行排序(即按修改时间,最新的在前)。
  • [1]仅选择第一个匹配项。

如果您从另一个 shell 调用它并想要使用文件名,您可以使用

latest_foo=$(zsh -c 'print -r -- **/foo.txt(om[1])')

但您也可以在 zsh 中编写整个脚本。

答案3

 find . -iname foo.txt -printf '%CYmd %p%f' | sort -n -t ' ' -k 2 | head -n 1

相关内容