首页 > 代码库 > linux touch 学习

linux touch 学习

    linux touch命令学习

   touch 意义:创建文件与修改文件

   touch格式:touch [options] file-list

  

参数

file-listtouch将要创建或更新的文件路径名

 

 

选项

 

-a                    只更新访问时间,不改变修改时间

 

-c                    不创建不存在的文件

 

-m                   只更新修改时间,不改变访问时间

 

-r file               使用文件file的时间更新文件的时间

 

-t                     将时间修改为参数指定的日期,如:07081556代表7月8号15点56分

 

 

示例

 

touch 更新已有文件时间

 

$ ls -l Firefox_wallpaper.png 
-rw-r--r-- 1 siu siu 309597 12月 20 15:03 Firefox_wallpaper.png
$ touch Firefox_wallpaper.png 
$ ls -l Firefox_wallpaper.png 
-rw-r--r-- 1 siu siu 309597  1月  8 15:18 Firefox_wallpaper.png

 

touch 无选项,会同时更新文件的修改时间和访问时间

 

 

 

touch 创建文件

 

$ touch demo.c
$ ls -l
总用量 372
-rw-r--r-- 1 siu siu      0  1月  8 15:21 demo.c

 

 

 

touch -at 使用参数更新访问时间

 

首先看看原来的修改时间和访问时间,ls -lu用来查看访问时间

 

$ ls -l
总用量 68
-rw-r--r-- 1 siu siu 66350 12月 23 16:51 hs_err_pid2874.log
$ ls -lu
总用量 68
-rw-r--r-- 1 siu siu 66350  1月  8 15:17 hs_err_pid2874.log

 

接着是更新过后的修改时间和访问时间

 

$ touch -at 01081010 hs_err_pid2874.log 
$ ls -l
总用量 68
-rw-r--r-- 1 siu siu 66350 12月 23 16:51 hs_err_pid2874.log
$ ls -lu
总用量 68
-rw-r--r-- 1 siu siu 66350  1月  8 10:10 hs_err_pid2874.log

 

可以看到,修改时间没有变动,但是访问时间改变了

 

 

 

touch -m 只更新修改时间

 

$ ls -l
总用量 68
-rw-r--r-- 1 siu siu 66350 12月 23 16:51 hs_err_pid2874.log
$ touch -m hs_err_pid2874.log 
$ ls -l
总用量 68
-rw-r--r-- 1 siu siu 66350  1月  8 15:31 hs_err_pid2874.log
$ ls -lu
总用量 68
-rw-r--r-- 1 siu siu 66350  1月  8 10:10 hs_err_pid2874.log

 

由上面的示例可知,此处访问时间没有改变,而修改时间发生了变动

 

 

 

Tips

 

1.可以用默认的当前时间来更新文件的访问时间和修改时间,也可以指定参数来更新

 

2.通常情况下,touch用的最多的地方还是在于创建新文件

 

linux touch 学习