touch:命令创建文件
Posted scajy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了touch:命令创建文件相关的知识,希望对你有一定的参考价值。
touch:创建空文件或改变文件的时间戳属性
【功能说明】
touch命令有两个功能:一是创建新的空文件;二是改变已有文件的时间戳属性
【语法格式】
touch [option] [file] touch [选项] [文件] |
提示:
- touch命令以及后面的选项和文件,每个元素之间都至少要有一个空格
- 注意区分touch和mkdir命令的功能,mkdir命令是创建空目录,而touch是创建空文件。
- 在linux中,一切皆文件。虽然touch命令不能创建目录,但是可以修改目录的时间戳。
【选项说明】
参数说明 | 解释说明 |
-a | 只更改指定文件的最后访问时间 |
-d | 使用字符串STRING代表的时间作为模板设置指定文件的时间属性 |
-m | 只更改指定文件的最后修改时间 |
-r file | 将指定文件的时间属性设置为与模板文件file的时间属性相同 |
-t STAMP | 使用[[CC]YY]MMDDhhmm[.ss]格式的时间设置文件的时间属性。格式的含义从左到右依次为:世纪、年、月、日、时、分、秒 |
【使用范例】
基础范例
案例1:创建文件示例(文件事先不存在的情况)
[[email protected] ~]# mkdir /test #在根下新建一个test目录 |
案例2:更改文件的时间戳属性
[[email protected] test]# stat aa.txt #stat命令可以查看文件的时间戳属性,具体用法见后面stat命令 提示: 说明:文件的时间戳属性分为访问时间、修改时间、状态改变时间
[[email protected] test]# touch -m aa.txt #-m参数更改最后修改的时间 |
案例3:指定时间属性创建/修改文件
可利用选项-d指定创建文件后的文件修改时间:
[[email protected] test]# ls -lh aa.txt #修改前的文件修改时间10月30日 |
也可以利用选项-r,修改aa.txt的时间属性,使其和a.txt的时间属性一致:
[[email protected] test]# ls -lh a.txt #查看a.txt的修改时间 |
还可以利用选项-t,将文件设置为201810312333.50时间格式
[[email protected] test]# touch -t 201810312333.50 aa.txt 查看设置的属性 |
【扩展知识】
这里扩展一点有关时间戳属性的知识
GNU/Linux的文件有三种类型的时间戳:
Access: 2018-10-31 23:33:50.000000000 +0800 #最后访问文件的时间 |
对应ls命令,查看上述时间戳的选项如下:
mtime:最后修改时间(ls -lt) #修改文件内容,文件的修改时间(modify time)会改变 ctime:状态改变时间(ls -lc)#修改文件内容,移动文件或改变文件属性等,文件的change时间会改变 atime:最后访问时间(ls -lu) #查看文件内容时,文件的访问时间(access time)会改变 |
以上是关于touch:命令创建文件的主要内容,如果未能解决你的问题,请参考以下文章
周末杂谈:关于Hadoop集群中,其创建文件的touch命令和touchz命令有什么区别?以及在什么样的情况下创建文件使用不同的命令。