stat命令输出结果中, Access,Modify,Change的含义

先建立一个空白文件a.txt

1[emduser@emd tmp]$ touch a.txt
2 
3[emduser@emd tmp]$ ls -al a.txt
4 
5-rw-rw-r-- 1 emduser emd 0 Dec 14 16:44 a.txt

利用stat命令查看文件a.txt的各种属性
01[emduser@emd tmp]$ stat a.txt
02 
03  File: `a.txt'
04 
05  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
06 
07Device: fd00h/64768d    Inode: 654176      Links: 1
08 
09Access: (0664/-rw-rw-r--)  Uid: (  501/ emduser)   Gid: (  506/     emd)
10 
11Access: 2011-12-14 16:44:23.000000000 +0800
12 
13Modify: 2011-12-14 16:44:23.000000000 +0800
14 
15Change: 2011-12-14 16:44:23.000000000 +0800

上述最后三行的含义如下:

Access : 文件最近一次被访问的时间

Modify:  文件内容最近一次被修改的时间

Change: 文件属性最近一次被改变的时间

  • 假如用cat命令将文件a.txt的内容输出到终端( 执行 cat a.txt), 那么只有a.txt的Access就被刷新了
  • 假如我们把当前的时间追加到a.txt(执行 date >> a.txt) , 那么a.txt的Modify和Change都被刷新
  • 假如我们把a.txt的权限改为777(执行 chmod 777 a.txt) , 那么只有a.txt的Change被刷新
  • 假如我们用vi命令把文件a.txt打开, 然后保存退出,那么a.txt的Access,Modify和Change都被刷新
PS:  我们可以使用命令touch更新a.txt的Access和Modify时间,比如:

touch -d 1999-01-01 a.txt // 将a.txt的Access和Modify时间改为1999-01-01
touch -a a.txt  // 只将a.txt的Access时间改为当前系统时间
touch -m a.txt // 只将a.txt的Modify时间改为当前系统时间

当我们用ls -l a.txt看到的时间是Modify时间

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值