1. 程式人生 > >atime,mtime,ctime以及用touch指令來進行修改

atime,mtime,ctime以及用touch指令來進行修改

Linux下的檔案或目錄有三種時間:

訪問時間(Atime):記錄該檔案被訪問的最後一次的時間,即Atime。

修改時間(Mtime):當對這個檔案內容進行修改後,Modify顯示的時間就會更新一次,即Mtime。

狀態改變時間(Ctime):當檔案的內容、更改檔案許可權、連結屬性時隨檔案的Inode更改而改變的時間,即Ctime。

一、如何顯示檔案的這三種時間?

首先我們需要建立好一個test.c檔案: touch test.c

1.用ls -l命令:該命令顯示的是檔案的詳細資訊。在檔名的前面有一列顯示的是時間,這個時間是建立/修改時間。


2.用stat命令: $stat  檔名


我們可以看出,在執行這行指令後,不僅僅顯示了Atime(Access)、Mtime(Modify)、Ctime(Change),還有其他的

一些資訊,比如:檔案的大小(Size)、所佔塊數、檔案型別、Inode號、檔案許可權、以及UID和GID等等。

補充:

1.由於Linux下塊的大小是512位元組,所佔塊數 = Block顯示數字 / 512

2.GID:GroupID,即組ID,用來標識使用者組的唯一識別符號(每個組使用者也有唯一的組id

  UID:UserId,即使用者ID,用來標識每個使用者的唯一識別符號(每個使用者都有唯一的使用者id

再往下看還有三行資訊,這就是檔案的三種時間,既然已經給出了這三種時間的概念,那我們就舉個例子來解釋說明一下:

Atime:


Mtime:


Ctime:


二、如何修改檔案的這三種時間?

使用touch指令,不僅可以建立一個檔案,還可以修改檔案的時間:

格式:touch 引數  檔名

引數:

-a:或--time=atime或--time=access或--time=use

-c:或--no-creat,如果棉花地檔案不存在,也不建立任何文件

-d:使用指定的日期時間,可以使用不同的格式

-m:或--time=mtime或--time=modify,改變修改時間

-r:把指定的檔案日期更設成和參考文件或目錄日期相同的時間

-t:使用指定的日期時間,格式與date指令相同

以下會通過例項來講解這些命令的用法:

1.新建一個檔案:

touch 檔名


2.修改Atime:

touch -a 檔名


3.touch指令建立一個不存在的檔案

touch -c 檔名


4.使用指定的日期來修改:

touch -d  時間  檔名

touch -d "時間"  檔名


5.使用-t引數來修改時間:


6.將1.txt檔案的時間設定為與test2.c檔案相同的時間:

touch  -r  test2.c  1.txt