Linux touch命令

简介
Linux中的touch命令是一个非常常用的命令,用于创建空白文件或更新文件和目录的时间戳。它可以用于在不提供文件内容的情况下创建新文件,或者用于更改指定文件的时间戳。本文将详细介绍touch命令的用法和示例。
语法
touch命令的基本语法如下:
touch [OPTION]... FILE...
参数和选项
touch命令支持以下参数和选项:
-a:仅更新访问时间。-c:禁止创建新文件。-d:使用指定的时间戳更新文件的时间。-m:仅更新修改时间。-r:使用参考文件的时间戳更新文件的时间。--time:指定时间戳。格式为[[ CC ] YY ] MM DD hh mm [.ss]。--help:显示帮助信息。--version:显示touch命令的版本信息。
创建新文件
touch命令可以方便地创建新文件。通过简单地在命令行上指定文件名,即可创建一个空白文件。以下是示例命令和输出:
$ touch myfile.txt
上述命令将创建一个名为myfile.txt的空白文件。如果文件已经存在,则touch命令将更新文件的访问和修改时间。如果文件不存在,touch命令就会创建一个新的空白文件。
更新文件时间戳
除了创建新文件,touch命令还可用于更新文件的时间戳。时间戳是指文件的访问时间(atime)、修改时间(mtime)和状态变化时间(ctime)。
更新访问时间
使用-a选项可以仅更新文件的访问时间,而不修改文件的修改时间。以下是示例命令和输出:
$ touch -a myfile.txt
上述命令将更新myfile.txt文件的访问时间为当前时间。
更新修改时间
使用-m选项可以仅更新文件的修改时间,而不改变文件的访问时间。以下是示例命令和输出:
$ touch -m myfile.txt
上述命令将更新myfile.txt文件的修改时间为当前时间。
更新访问时间和修改时间
默认情况下,touch命令将同时更新文件的访问时间和修改时间。通过省略-a和-m选项,可以实现这个效果。以下是示例命令和输出:
$ touch myfile.txt
上述命令将同时更新myfile.txt文件的访问时间和修改时间为当前时间。
更新文件时间戳为某一特定时间
除了使用当前时间来更新文件的时间戳,touch命令还可以使用-d选项将文件时间戳设置为指定的时间。为了指定一个特定的时间,可以使用--date或-d选项,后面跟着要指定的时间。以下是示例命令和输出:
$ touch -d "2022-10-01 12:00" myfile.txt
上述命令将myfile.txt文件的时间戳设置为2022年10月1日12:00。
使用参考文件的时间戳更新文件时间戳
通过使用-r选项,touch命令可以使用另一个文件的时间戳来更新指定文件的时间戳。以下是示例命令和输出:
$ touch -r ref.txt myfile.txt
上述命令将myfile.txt文件的时间戳设置为与ref.txt文件相同。
设置自定义时间戳
除了使用当前时间或参考文件的时间戳,touch命令还支持使用自定义的时间戳。通过使用--time选项,可以指定所需的时间戳。时间戳的格式为[[ CC ] YY ] MM DD hh mm [.ss]。以下是示例命令和输出:
$ touch --time=202001011200.00 myfile.txt
上述命令将myfile.txt文件的时间戳设置为2020年1月1日12:00。
其他用法
批量创建多个文件
touch命令还可以通过在一个命令中指定多个文件名来同时创建多个文件。以下是示例命令和输出:
$ touch file1.txt file2.txt file3.txt
上述命令将同时创建file1.txt、file2.txt和file3.txt三个空白文件。
使用通配符创建文件
touch命令支持使用通配符来创建符合特定模式的文件。以下是示例命令和输出:
$ touch file*.txt
上述命令将以file开头、以.txt结尾的所有文件都将被创建。
结论
touch命令是一个非常常用和实用的命令,可以用于创建空白文件、更新文件时间戳等操作。通过本文的介绍,您应该能够掌握touch命令的基本用法,并在实际应用中灵活运用。
极客笔记