Linux Touch 命令的 8 个常见用法
Linux touch 命令的用途不仅仅是在 Linux 上创建空文件。您可以使用它来更改现有文件的时间戳,包括它们的访问时间和修改时间。本文介绍了 8 个可以通过 Linux 终端使用 touch 命令的场景。
我们已在 Ubuntu 18.04 LTS 系统上运行本文中提到的命令和过程。由于 touch 命令是一个命令行实用程序,因此我们将在本文中使用 Ubuntu 终端。您可以通过系统 Dash 或 Ctrl+Alt+T 快捷键打开终端。
1. 使用 touch 命令创建一个空文件
touch命令最简单最基本的用法就是通过命令行创建一个空文件。如果您是精通终端的人,您可以通过以下命令在命令行中快速创建新文件:
$touch“文件名”
例子 :
touch samplefile
在下面的示例中,我通过 touch 命令创建了一个名为“samplefile”的空文件。然后,我使用 ls 命令查看系统上是否存在该文件,因为 touch 命令不会提示文件是否已创建。
2.使用touch命令一次创建多个文件
尽管 cat 命令和标准重定向符号也是通过命令行创建文件的方法,但 touch 命令具有优势,因为您可以使用它一次创建多个文件。您可以使用以下语法通过 touch 命令创建多个文件:
touch samplefile1 samplefile2 samplefile3 ….
在以下示例中,我通过 touch 命令同时创建了三个文件,然后使用 ls 命令查看这些文件是否存在:
3. 强制避免使用 touch 命令创建新文件
有时,如果新文件不存在,则需要避免创建新文件。在这种情况下,您可以将“-c”选项与 touch 命令一起使用,如下所示:
touch -c “filename”
在下面的示例中,我使用 touch 命令来强制避免创建上述新文件。
当我使用 ls 命令列出该文件时,以下输出验证我的系统中不存在此类文件。
4. 更改文件的访问和修改时间
touch 命令的另一个用途是更改文件的访问时间和修改时间。
让我们举一个例子来展示如何做到这一点。我通过 touch 命令创建了一个名为“testfile”的文件,并通过 stat 命令查看其统计信息:
然后我输入以下触摸命令:
touch testfile
此 touch 命令将访问和修改时间更改为我再次对“testfile”运行 touch 命令的时间。您可以在下图中看到更改的访问和修改时间:
5. 更改访问时间或修改时间
我们可以选择通过 touch 命令仅更改其中之一,而不是同时更改访问时间和修改时间。
在下面的示例中,我创建了一个名为“samplefile”的文件,并通过 stat 命令查看其统计信息:
我只能通过对此文件的 touch 命令使用“-a”选项来更改该文件的访问时间:
touch -a samplefile
stat 命令的输出现在显示访问时间已更改为我使用“-a”选项运行 touch 命令时的时间:
我只能通过对此文件的 touch 命令使用“-m”选项来更改该文件的修改时间:
touch -m samplefile
stat 命令的输出现在显示修改时间已更改为我使用“-m”选项运行 touch 命令时的时间:
6. 如何将一个文件的访问和修改时间复制到另一个文件
假设我们有一个名为 SamplefileA 的文件:
另一个名为 SamplefileB 的文件:
如果要将samplefileA的访问和修改时间更改为samplefileB的访问和修改时间,可以按如下方式起诉touch命令:
touch samplefileA -r sampleFileB
上图中 stat 命令的输出显示 SamplefileA 现在具有与 SamplefileB 相同的访问权限和修改值。
7. 创建一个具有指定时间戳的新文件
为了创建一个具有指定时间戳而不是实际创建时间的新空文件,您可以使用 touch 命令的以下语法:
touch -t YYMMDDHHMM.SS “filename”
以下示例显示了示例文件上的 stat 命令如何显示其访问和修改时间基于我通过 touch 命令创建它时提供的时间戳:
8. 将文件的时间戳更改为其他时间
您可以使用 touch 命令的以下语法将现有文件的时间戳更改为其他时间:
touch -c -t YYMMDDHHMM.SS “filename”
在以下示例中,我通过 touch 命令更改了现有文件的时间戳,然后通过该示例文件上的 stat 命令验证了更改:
通过我们在本文中介绍的基本但有用的场景,您可以开始掌握 touch 命令并使用它通过 Linux 命令行快速执行一些看似复杂的任务。