1. 程式人生 > >linux中touch命令引數修改檔案的時間戳

linux中touch命令引數修改檔案的時間戳

linux中touch命令引數不常用,一般在使用make的時候可能會用到,用來修改檔案時間戳,或者新建一個不存在的檔案,以下是linux中touch命令引數的使用方法:

  touch [-acm][-r ref_file(參照檔案)|-t time(時間值)] file(檔名)

  example:

  touch file1.txt 更新file1.txt的存取和修改時間

  touch -c file1.txt 如果file1.txt不存在,不建立檔案

  touch -r ref_file file1.txt 更新file1.txt的時間戳和ref+file相同

  touch -t 0811142234.50 file1.txt 設定檔案的時間錯為08年11月14日22點34分40秒

  -a或--time=atime或--time=access或--time=use  只更改存取時間。

  -c或--no-create  不建立任何文件。

  -d  使用指定的日期時間,而非現在的時間。

  -f  此引數將忽略不予處理,僅負責解決BSD版本touch指令的相容性問題。

  -m或--time=mtime或--time=modify  只更改變動時間。

  -r  把指定文件或目錄的日期時間,統統設成和參考文件或目錄的日期時間相同。

  -t time

  使用指定的時間值 time 作為指定檔案 file 相應時間戳記的新值.此處的 time 規定為如下形式的十進位制數∶

  [[CC]YY]MMDDhhmm[.SS]

  這裡,CC為年數中的前兩位,即”世紀數”;YY為年數的後兩位,即某世紀中的年數.如果不給出CC的值,則linux中touch命令引數將把年數CCYY限定在1969--2068之內.MM為月數,DD為天將把年數CCYY限定在1969--2068之內.MM為月數,DD為天數,hh 為小時數(幾點),mm為分鐘數,SS為秒數.此處秒的設定範圍是0--61,這樣可以處理閏秒.這些數字組成的時間是環境變數TZ指定的時區中的一個時間.由於系統的限制,早於1970年1月1日的時間是錯誤的.