폴더 구조에서 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]
첫 번째 일치 항목만 선택됩니다.
다른 쉘에서 호출하고 파일 이름을 사용하려는 경우 다음을 사용할 수 있습니다.
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