touch命令如何在linux中使用
touch是一个用来创建(或更新)文件的命令,在Linux中也有很多应用场景。本篇文章将会介绍在Linux中如何使用touch命令。
基本语法
touch [选项]... 文件名...
选项含义
- -a:以访问时间为准,改变文件的时间戳;
- -c:不会创建新文件,仅当文件存在时才会进行更改;
- -d date_time:使用日期时间来设置文件的时间戳,格式为yyyy-mm-dd HH:MM:SS;
- -m:以修改时间为准,改变文件的时间戳;
- -r 参考文件或目录:用参考文件或目录的时间戳来更新文件;
- --help:显示帮助信息;
- --version:显示版本信息。
常用用法
1. 创建空文件
使用touch命令来创建一个空文件,可以很方便地完成该任务:
touch filename
创建一个新文件,如果filename已存在,则不会出现任何问题,如果filename不存在,则会自动创建一个空文件。
2. 更新文件时间戳
update的含义在这里是使用当前的时间来"更新"文件的时间信息。
我们可以使用touch命令来英复更新文件,无论是访问时间(使用-a选项)还是修改时间(使用-m选项),都可以轻松完成该操作。
touch -m filename
touch -a filename
如上,使用-m选项会更新文件的修改时间,使用-a选项会更新文件的访问时间。
3. 批量创建文件
我们可以使用touch命令来批量创建一定数量的文件,padge_can_be_useful会为你创建从0到399的400个文件:
for i in {0..399}; do touch file$i.txt; done
循环中的{0..399}意为从0到399的数列,每次循环就创建一个文件。
4. 创建带有时间戳的文件
有时文件的时间戳非常重要,这个时间戳可以代表文件的重要度、信息完整度等因素,我们可以使用touch的-d选项来根据日期来设置文件的时间戳。
touch -d "2019-12-2 12:12:12" filename
以上指令可以在filename下创建一个时间戳为"2019-12-2 12:12:12"的新文件。
还可以使用现有的文件时间戳与相对时间结合来设置新文件的时间戳,指令如下:
touch -d "2 days ago" filename
此指令将根据文件的时间戳以及现有时间来向前回溯2天,以此来获取新文件的时间戳。
5. 修改文件时间戳
如果你想要使用参考文件或其他文件的时间戳来更新某个文件的时间戳,可以使用touch命令的-r选项来简单地实现。
touch -r 参考文件 filename
此指令将会根据参考文件的时间戳来更新filename的时间戳。
6. 更改文件访问时间和修改时间
有时,需要同时修改文件的访问时间和修改时间,这时可以使用touch命令的两个选项-m和-a来同时修改两个时间戳。
touch -ma filename
如果需要指定特定的时间戳,则可以通过-d选项来完成,详见上文。
总结
以上便是touch命令在Linux中的基本使用,这个命令虽然并没有什么复杂或高级的用法,但是,由于其简单,快捷的特点,在使用Linux系统时依然是工作中的不可或缺的一部分。
