一、touch命令簡介
該命令可用于更改文件或目錄的時間屬性,包括訪問時間和修改時間。如果文件不存在,則會創(chuàng)建一個新文件。我們平時用得最多的是通過touch創(chuàng)建一個空文件,實際上通過touch命令可以修改文件的atime、mtime,所以文件的真實訪問時間和修改時間是可以被修改,我們在排查系統(tǒng)異常的時候還需要結(jié)合日志、歷史命令等等因素綜合決策。
二、使用示例
1、獲取命令幫助
[root@s145]~# touch –help
2、查看命令版本
[root@s145]~# touch –version
touch (GNU coreutils) 8.22
…
3、創(chuàng)建一個空文件
如果文件不存在,使用touch命令默認(rèn)創(chuàng)建一個空文件。
4、更新atime、mtime、ctime
使用touch命令,如果文件存在則更新atime,mtime,ctime為當(dāng)前時間。
5、-a更新atime和ctime
使用-a參數(shù),touch文件時,文件存在只會更新atime和ctime為當(dāng)前時間。
6、-m參數(shù)修改mtime
使用-m參數(shù),touch文件時,文件存在只會更新mtime和ctime為當(dāng)前時間。
7、-d參數(shù)將文件的atime,mtime,ctime按照設(shè)置修改
使用touch命令的選項-d “3 years ago”可以將文件的三個時間戳設(shè)為3年前。
8、-t參數(shù)修改atime和mtime
使用touch -t “[[CC]YY]MMDDhhmm[.ss]”修改文件的atime和mtime
9、使用-at參數(shù)只修改atime
如果只想更新atime可以使用-at組合參數(shù)。
10、使用-mt參數(shù)只修改mtime
如果只想更新mtime可以使用-mt組合參數(shù)。
11、-r參數(shù)修改文件時間屬性為另一文件時間屬性
使用touch命令并指定file1文件作為參考,可以將file2文件的時間屬性值更新為與file1相同的值。具體命令為:touch -r file1 file2。
12、-h更新軟連接的時間屬性
touch命令默認(rèn)更新的是真實文件的時間屬性,如果需要更新軟連接的時間屬性,需要使用-h參數(shù)。
三、使用語法及參數(shù)說明
1、使用語法
用法:touch [OPTION]… FILE…
2、參數(shù)說明
參數(shù) | 參數(shù)說明 |
---|---|
– a | 改變檔案的讀取時間記錄。 |
-c | 假如目的檔案不存在,不會建立新的檔案。與 –no-create 的效果一樣。 |
-d | 設(shè)定時間與日期,可以使用各種不同的格式。 |
-f | 不使用,是為了與其他 unix 系統(tǒng)的相容性而保留。 |
-h | 影響每個符號鏈接,而不是任何引用的文件(僅在可以更改符號鏈接時間戳的系統(tǒng)上有用) |
-m | 改變檔案的修改時間記錄。 |
-r | 使用參考檔的時間記錄,與 –file 的效果一樣。 |
-t | 設(shè)定檔案的時間記錄,格式與 date 指令相同。 |
–help | 列出指令格式。 |
–version | 列出版本訊息。 |