Files
使用“ls”時如何將文件日期轉換為特定格式
我有以下輸入數據:
-rw-rw-r--. 1 abmnyu abmnyu 0 Dec 30 07:06 ffd_in_imp_bus.dat -rw-rw-r--. 1 abmnyu abmnyu 0 Dec 30 07:06 ffd_ik_imp_bus.dat
我在使用時需要
Dec 30
以格式顯示,如下圖:20171230``ls -l
-rw-rw-r--. 1 abmnyu abmnyu 0 20171230 07:06 ffd_in_imp_bus.dat -rw-rw-r--. 1 abmnyu abmnyu 0 20171230 07:06 ffd_ik_imp_bus.dat
如果您使用 GNU
ls
(這是 Linux 系統上的標準),它有一個--time-style
可用於更改日期/時間格式的選項。最接近您想要的內置格式是
long-iso
.例如
$ ls -l --time-style=long-iso total 1 -rw-r--r-- 1 cas cas 0 2017-12-30 21:26 ffd_ik_imp_bus.dat -rw-r--r-- 1 cas cas 0 2017-12-30 21:26 ffd_in_imp_bus.dat
您還可以使用與 GNU 中相同的日期格式規範來使用自定義格式
date
:$ ls -l --time-style='+%Y%m%d %H:%M' total 1 -rw-r--r-- 1 cas cas 0 20171230 21:26 ffd_ik_imp_bus.dat -rw-r--r-- 1 cas cas 0 20171230 21:26 ffd_in_imp_bus.dat
來自
man ls
:–time-style=風格
with
-l
, 使用樣式顯示時間 STYLE:full-iso
,long-iso
,iso
,locale
, 或+FORMAT
FORMAT 的解釋類似於“日期”
如果 FORMAT 是
FORMAT1<newline>FORMAT2
,則 FORMAT1 適用於非最近文件, FORMAT2 適用於最近文件。如果 STYLE 以 為前綴
posix-
,則 STYLE 僅在 POSIX 語言環境之外生效