linux的touch命令一般用來修改文件時間戳,或者新建一個不存在的文件。 一.命令格式: touch [參數]... 文件... 二.命令參數: |參數|描述| | | | | a | 或 time=atime或 time=access或 time=use 只更改存取時間。| | c | 或 n ...
linux的touch命令一般用來修改文件時間戳,或者新建一個不存在的文件。
一.命令格式:
touch [參數]... 文件...
二.命令參數:
參數 | 描述 |
---|---|
-a | 或--time=atime或--time=access或--time=use 只更改存取時間。 |
-c | 或--no-create 不建立任何文檔。 |
-d | 使用指定的日期時間,而非現在的時間。 |
-f | 此參數將忽略不予處理,僅負責解決BSD版本touch指令的相容性問題。 |
-m | 或--time=mtime或--time=modify 只更改變動時間。 |
-r | 把指定文檔或目錄的日期時間,統統設成和參考文檔或目錄的日期時間相同。 |
-t | 使用指定的日期時間,而非現在的時間。 |
三.命令功能:
touch命令參數可更改文檔或目錄的日期時間,包括存取時間和更改時間。
四.使用實例:
1. 創建file1和file2兩個空文件
命令:
touch file1 file2
輸出:
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
hc@hc-virtual-machine:~/test$ touch file1 file2
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file2
說明:
如果加入 -c 參數,當目標文件不存在時,不會創建新文件,如果目標文件存在,則會修改文件時間屬性為當前系統時間
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file2
hc@hc-virtual-machine:~/test$ touch -c file2
hc@hc-virtual-machine:~/test$ touch -c file3
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file2
2. 將file1的時間改為file2的時間
命令:
touch -r file2 file1
輸出:
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:48 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file2
hc@hc-virtual-machine:~/test$ touch -r file2 file1
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file2
3.指定文件的日期時間
命令:
touch -t 201810011003.17 file2
輸出:
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file1
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file2
hc@hc-virtual-machine:~/test$ touch -t 201810011003.17 file2
hc@hc-virtual-machine:~/test$ ll
總用量 8
drwxr-xr-x 2 hc hc 4096 11月 1 09:48 ./
drwxr-xr-x 25 hc hc 4096 10月 31 19:52 ../
-rw-r--r-- 1 hc hc 0 11月 1 09:50 file1
說明:
-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日的時間是錯誤的。