我試圖從文件夾結構中獲取最近修改的文件(日期時間 - 作爲unixtimestamp)。有很多文件,但我只需要最近更新的日期時間。獲取文件夾結構中的最後修改文件日期
I'ved試過以下,但我覺得我的標記方式:
stat --printf="%y %n\n" $(ls -tr $(find * -type f))
我試圖從文件夾結構中獲取最近修改的文件(日期時間 - 作爲unixtimestamp)。有很多文件,但我只需要最近更新的日期時間。獲取文件夾結構中的最後修改文件日期
I'ved試過以下,但我覺得我的標記方式:
stat --printf="%y %n\n" $(ls -tr $(find * -type f))
試試這個:
ls -trF | grep -v '\/\|@' | tail -1 | xargs -i date +%s -r {}
ls -trF
給你符號過濾掉, '/' 目錄和 '@' 的鏈接。之後,將這些文件清理出來,挑選最後一個文件,並將其傳遞給日期命令。
編輯:值得注意的是date -r
選項,它將顯示文件的最後修改日期作爲參數給出。
這樣的事情?
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
)