每天一個Linux指令- touch (修改檔時間戳記)
每天一個Linux指令- touch (修改檔時間戳記)
拷貝來源:
01.http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html
02.http://www.cnblogs.com/peida/archive/2012/10/30/2745714.html
linux的touch命令不常用,一般在使用make的時候可能會用到,用來修改檔時間戳記,或者新建一個不存在的檔案。
1.命令格式:
touch [選項]… 文件…
2.命令參數:
-a 或–time=atime或–time=access或–time=use 只更改存取時間。
-c 或–no-create 不建立任何文檔。
-d 使用指定的日期時間,而非現在的時間。
-f 此參數將忽略不予處理,僅負責解決BSD版本touch指令的相容性問題。
-m 或–time=mtime或–time=modify 只更改變動時間。
-r 把指定文檔或目錄的日期時間,統統設成和參考文檔或目錄的日期時間相同。
-t 使用指定的日期時間,而非現在的時間。
3.命令功能:
touch命令參數可更改文檔或目錄的日期時間,包括存取時間和更改時間。
4.使用範例:
實例一:創建不存在的文件
命令:
touch log2012.log log2013.log
輸出:
[root@localhost test]# touch log2012.log log2013.log
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 16:01 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
如果log2014.log不存在,則不創建文件
[root@localhost test]# touch -c log2014.log
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 16:01 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
實例二:更新log.log的時間和log2012.log時間戳記相同
命令:
touch -r log.log log2012.log
輸出:
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 16:01 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
-rw-r–r– 1 root root 0 10-28 14:48 log.log
[root@localhost test]# touch -r log.log log2012.log
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 14:48 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
-rw-r–r– 1 root root 0 10-28 14:48 log.log
實例三:設定文件的時間戳記
命令:
touch -t 201211142234.50 log.log
輸出:
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 14:48 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
-rw-r–r– 1 root root 0 10-28 14:48 log.log
[root@localhost test]# touch -t 201211142234.50 log.log
[root@localhost test]# ll
-rw-r–r– 1 root root 0 10-28 14:48 log2012.log
-rw-r–r– 1 root root 0 10-28 16:01 log2013.log
-rw-r–r– 1 root root 0 2012-11-14 log.log
說明:
-t time 使用指定的時間值 time 作為指定檔相應時間戳記記的新值.此處的 time規定為如下形式的十進位數字:
[[CC]YY]MMDDhhmm[.SS]
這裡,CC為年數中的前兩位,即”世紀數”;YY為年數的後兩位,即某世紀中的年數.如果不給出CC的值,則touch 將把年數CCYY限定在1969–2068之內.MM為月數,DD為天將把年數CCYY限定在1969–2068之內.MM為月數,DD為天數,hh 為小時數(幾點),mm為分鐘數,SS為秒數.此處秒的設定範圍是0–61,這樣可以處理閏秒.這些數位組成的時間是環境變數TZ指定的時區中的一個時 間.由於系統的限制,早於1970年1月1日的時間是錯誤的。