Linux
將日期轉換為標準格式
我正在使用這個命令,
find -name (file name) -ls | awk '{print $11,"\t",$5,"\t",$7,"\t",$8,$10}'
收集大量文件的資訊。但是,如果文件在 2018 年被修改,一些文件給我們的日期應該是奇怪的數字。想知道您是否有任何建議將這些數字轉換為標準格式,即 2016 年 5 月、2017 年 5 月、2018 年 5 月。 2017 年之前修改的文件的輸出沒有問題。
有沒有辦法以這種格式獲得目前年份的輸出,比如 2018 年 5 月?
由於您使用的是 Linux,因此您可以使用命令的
-printf
參數find
:find -name 'pattern' -printf '%p\t\t%Tb %TY\n'
樣本輸出:
$ find -name 'file*' -printf '%p\t\t%Tb %TY\n' ./file1 Sep 2018 ./file6 Sep 2018 ./file4 Sep 2018 ./file2 Sep 2018 ./file3 Sep 2018 ./file5 Sep 2018
試試這個命令。
find . -name (file name) | xargs ls -l --time-style="+%b %Y" | awk '{print $NF,$3,$5,$6,$7}' OFS="\t"
ls -l --time-style="+%b %Y"
這用於在 ls 輸出中將時間樣式更改為 MMM YYYY。