我需要获取文件夹结构中 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