您的位置:首页 > 运维架构 > Linux

linux 下查看文件的完整时间信息及三种时间属性

2018-01-19 10:09 519 查看
一、linux下查看文件的完整时间信息
1、Linux 下查看文件时,ls –l 缺省是不显示秒的:
# ls -l /etc/
total 0
-rw-r--r--.  1 root   root         16 Jan  5 09:43 adjtime
-rw-r--r--.  1 root   root       1518 Jun  7  2013 aliases


2、要显示秒(实际更精确),可以用 –full-time 参数:
# ls -l /etc/ --full-time
total 0
-rw-r--r--.  1 root   root         16 2018-01-05 09:43:59.352996227 +0800 adjtime
-rw-r--r--.  1 root   root       1518 2013-06-07 22:31:32.000000000 +0800 aliases


3、要显示更多信息,用 stat 命令:
# stat /etc/adjtime
File: ‘/etc/adjtime’
Size: 16              Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 8483789     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:adjtime_t:s0
Access: 2018-01-05 09:48:18.965219287 +0800
Modify: 2018-01-05 09:43:59.352996227 +0800
Change: 2018-01-05 09:43:59.352996227 +0800
Birth: -


二、linux文件的三种时间属性
1、在Linux下,一个文件也有三种时间属性:
访问时间、修改时间、状态改动时间。

在Linux下没有创建时间的概念,也就是不能知道文件的建立时间,但
如果文件建立后就没有修改过,修改时间=建立时间;
如果文件建立后,状态就没有改动过,那么状态改动时间=建立时间;
如果文件建立后,没有被读取过,那么访问时间=建立时间,因为不好判断文件是否被改过、读过、其状态是否变过,所以判断文件的建立时间基本上为不可能。

linux文件的三种时间属性分别为:
atime,为access time(访问时间)的缩写,显示的是文件中的数据最后被访问的时间,读一次这个文件的内容,这个时间就会更新,比如被系统的进程直接使用或者通过一些命令和脚本间接使用。(执行一些可执行文件、脚本)或对这个文件运用 more、cat等命令。ls、stat命令都不会修改文件的访问时间
mtime,为modify time(修改时间)的缩写,显示的是文件的内容被改变时的最后时间,比如用vi编辑时就会改变(也就是Block的内容),ls -l列出的时间就是这个时间。
ctime,为change time(状态改动时间)的缩写,显示的是文件的权限,拥有者,所属的组,链接数发生改变时的时间。当然当内容改变时,也会改变。(也就是Inode内容发生改变和Block内容发生改变时),通过chmod、chown命令修改一次文件属性,这个时间就会更新。

2、查看文件这三种时间的命令有:
2.1、ls命令
ls -lc filename 列出文件的 ctime
ls -lu filename 列出文件的 atime
ls  -l  filename   列出文件的 mtime
字段           说明                                           例子                       ls(-l)
st_atime   文件数据的最后存取时间               read                       -u
st_mtime  文件数据的最后修改时间               write                       缺省
st_ctime   文件数据的最后更改时间               chown,chmod        -c


2.2、利用stat命令可以查看到文件的三种时间:
# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1862            Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 16797762    Links: 1
Access(权限): (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Context(环境): system_u:object_r:admin_home_t:s0
Access(最近访问): 2018-01-05 09:44:50.567995756 +0800
Modify(最近更改): 2018-01-05 09:44:50.569995756 +0800
Change(最近改动): 2018-01-05 09:44:50.569995756 +0800
Birth(创建时间): -

说明:Access访问时间。Modify修改时间。Change状态改动时间。可以stat *查看这个文件/目录所有文件的状态。
因为anaconda-ks.cfg文件没做过内容、属性的更改,也没读过这个文件,所以三者(访问时间、修改时间、状态改动时间)的时间是一致的,这时文件的修改时间与这三个时间是一样的,是没有疑问的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 查看文件 完整