Linux常用命令学习(十)touch命令

分类栏目:服务器

124

touch命令的主要功能是用来修改文件的时间戳,即修改文件的修改时间和访问时间,也可以用来创建一个空文件。

什么场景下会使用touch命令

如果你参加了一个全球性的开源项目,上面可能会有很多用户提供自己写的代码,而每个用户所在时区不同,这就造成项目里面的文件的时间戳很乱,在这种情况下就有可能导致项目编译会不成功。所以这时就需要touch命令来更改文件的时间戳。

对一般用户来说,可能用touch来创建一个空白文件比修改时间戳用得多。

命令名称

touch

所在路径

/bin/touch

执行权限

所有用户

命令格式

touch [选项] ... 文件 ...

功能描述

修改文件时间戳,创建空文件

命令选项

-a:只更改访问时间

-c, --no-create:不创建任何文件

-d, --date=字符串:使用指定字符串表示时间而非当前时间

-f:(忽略)

-h, --no-dereference:会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更改符号链接的所有者时,此选项才有用)

-m:只更改修改时间

-r, --reference=文件:使用指定文件的时间属性而非当前时间

-t STAMP:使用[[CC]YY]MMDDhhmm[.ss] 格式的时间而非当前时间

--time=WORD:使用WORD 指定的时间:access、atime、use 都等于-a选项的效果,而modify、mtime 等于-m 选项的效果

--help:显示此帮助信息并退出

--version:显示版本信息并退出

命令实例

1、touch postcha.com.txt ,这个命令有二层意思,当文件不存在时会创建一个空白文件。而当文件承在时会修改文件时间戳为当前时间。

第一次touch.postcha.com.txt时,因为目录下不承在此文件,所以创建了一个空文件,此时显示的时间为11:01,而第二次执行touch postcha.com.txt后,文件的时间变成了11:03。

2、touch -c postcha.txt。当文件不承在时不创建文件,而文件承在时修改文件时间戳为当前时间

3、touch -r postcha.com.txt postcha.txt。将后一个文件的明间戳修改为前一个文件的时间戳。

4、touch "program files",创建一个含空格的文件。虽然在Linux中可以包含绝大多数特殊符号,但是为了以后使用方便最好还是不要使用。