2014-09-30 148 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

相關問題