2014-09-30 114 views
0

我试图从文件夹结构中获取最近修改的文件(日期时间 - 作为unixtimestamp)。有很多文件,但我只需要最近更新的日期时间。获取文件夹结构中的最后修改文件日期

I'ved试过以下,但我觉得我的标记方式:

stat --printf="%y %n\n" $(ls -tr $(find * -type f)) 

回答

1

试试这个:

ls -trF | grep -v '\/\|@' | tail -1 | xargs -i date +%s -r {} 

ls -trF给你符号过滤掉, '/' 目录和 '@' 的链接。之后,将这些文件清理出来,挑选最后一个文件,并将其传递给日期命令。

编辑:值得注意的是date -r选项,它将显示文件的最后修改日期作为参数给出。

1

这样的事情?

ls -ltr | tail -n1 | awk '{print "date -d\"" $6FS$7FS$8 "\" +%s"}' | sh

编辑:

其实更重要的是,请尝试以下

find -type f -exec ls -l --time-style +%s {} \+ | sort -n -k6 | tail -n1

这会遍历你想要的文件夹结构,打印时间为Unix时间戳和排序它最新的是最后的。 (因此tail -n1

相关问题