【发布时间】:2016-07-20 23:35:06
【问题描述】:
如何在 bash 中获取最后修改的带有某些扩展名的文件,而不是对其执行某些操作?
【问题讨论】:
-
stackoverflow.com/help/how-to-ask
如何在 bash 中获取最后修改的带有某些扩展名的文件,而不是对其执行某些操作?
【问题讨论】:
试试这个,如果扩展名是 .jpg:
last_modified_file="$(find . -type f -name \*.jpg -printf "%T@ %p\0" | awk 'BEGIN {RS="\0";} {if (NR==1){minmtime=$1; $1=""; lastmodified=$0;} else if (minmtime<$1){minmtime=$1; $1=""; lastmodified=$0;}} END{print substr(lastmodified,4)}')"
# do something
printf "The last modified file is named %s\n" "${last_modified_file}"
find 列出当前目录和子目录中所有文件名以 .jpg 结尾的文件,awk 只打印最后修改的文件一个。
找到的文件名存储在变量last_modified_file中。
【讨论】: