Linux文件的时间及修改命令touch-linux修改文件名

Linux文件的时间及修改命令touch

Linux系统中的文件主要有三个时间参数,他们分别是修改时间(modification time,mtime)、状态时间(status time,ctime)、访问时间(access time,atime),具体含义如下:

⑴修改时间(modification time,mtime)

主要指的是文件的内容发生改变时,这个修改时间会发生变化,而文件的权限和属性变化时这个时间不会改变,如往文件中添加内容时会更新这个时间。

⑵状态时间(status time,ctime)

主要指的是文件状态改变,也就是文件的属性和权限发生变化的时间,文件的权限或属性发生改变这个时间就会更新。

⑶访问时间(access time,atime)

主要指的是文件被读取的时间,当文件被访问时这个时间就会发生改变,如使用cat命令查看文件内容时会更新这个时间。

文件的时间对于某些程序来说可能是非常重要的,时间不对就有可能会导致程序无法顺利执行。导致文件时间不对的情况还是非常多的,如设置BIOS时间不对,主板电池原因或者时间模块电路问题变慢等,以及时差因素都可能会引发错误的时间。

㈠更改文件的mtime并查看

当我们往文件中添加内容或者减少内容时文件的修改时间(mtime时间)会发生改变,也就是文件中的内容发生改变时这个mtime时间就会改变。如图2-34所示。

Linux文件的时间及修改命令touch

上图中的命令date;ll的意思是,有两个命令分别是date(显示计算机的时间)和ll(ls –l命令的别名)(详细列表文件的命令)。划红线的部分则是把“this my file”这个内容添加到文件cal2008的末尾中,文件内容发生变化,mtime也更新了。

㈡更改文件的ctime(状态时间)并查看

文件的ctime时间指的是文件的属性等相关内容的变化,而不是文件内容的变化时间,修改文件的权限这个时间会发生更新。如图2-35所示。

Linux文件的时间及修改命令touch

㈢更改文件的atime(访问时间)并查看

在默认的情况下,使用ls命令显示出来的是该文件的mtime(文件内容修改时间),这也是我们要关心的问题。

Linux文件的时间及修改命令touch

㈣变更文件的各种时间

变更文件的时间可以使用touch命令,其命令的格式如下:

命令:touch [选项] 文件

其中选项主要有:

⑴-a:只定义access time;

⑵-c:只修改文件的时间,若该文件不存在由不建立新文件;

⑶-d或--date=“日期或时间”:自定义自己的时间,而不使用目前的时间;

⑷-m:只修改mtime时间;

⑸-t:自定义自己的时间,而不使用目前的时间,其格式为[YYYYMMDDhhmm]。

如果touch命令后跟文件名,如果文件不存在则创建一个空文件,而如果文件存在则修改文件的全部时间为当前的时间。如图2-37所示。

Linux文件的时间及修改命令touch

修改文件的atime和mtime时间为2050年12月31日,如图2-38所示。

Linux文件的时间及修改命令touch

推荐阅读