如果你发出ls -all
命令,有些文件或目录有年份,有些有时间?为什么有的显示年份而有的显示时间?时间代表创建文件的时间吗?
Tho*_*ner 38
默认情况下,文件时间戳以缩写形式列出,对非最近时间戳使用“Mar 30 2002”之类的日期,对最近时间戳使用“Mar 30 23:45”之类的无年份日期和时间。这种格式可以根据当前的语言环境而改变,详情如下。
如果时间戳小于 6 个月且未在未来确定日期,则该时间戳被认为是最近的。如果今天的时间戳未以最近的形式列出,则时间戳是将来的,这意味着您可能存在时钟偏差问题,这可能会破坏依赖文件时间戳的 make 等程序。
来源:http : //www.gnu.org/software/coreutils/manual/coreutils.html#Formatting-file-timestamps
为了显示:
$ for i in {1..7}; do touch -d "$i months ago" file$i; done
$ ls -l
total 0
-rw-r--r-- 1 terdon terdon 0 Sep 21 02:38 file1
-rw-r--r-- 1 terdon terdon 0 Aug 21 02:38 file2
-rw-r--r-- 1 terdon terdon 0 Jul 21 02:38 file3
-rw-r--r-- 1 terdon terdon 0 Jun 21 02:38 file4
-rw-r--r-- 1 terdon terdon 0 May 21 02:38 file5
-rw-r--r-- 1 terdon terdon 0 Apr 21 2015 file6
-rw-r--r-- 1 terdon terdon 0 Mar 21 2015 file7
Run Code Online (Sandbox Code Playgroud)
Kir*_*ira 28
表示的时间是修改时间。请注意,ls -all
这与 相同ls -l -a
,与 不同ls --all
。l
在您的示例中没有理由使用 double 。如果要查看每个文件的修改时间,可以使用ls -al --full-time
.