加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

touch命令最基本的功能就是创建空文件

发布时间:2023-11-01 10:06:45 所属栏目:Linux 来源:未知
导读:   在Linux系统中touch命令最基本的功能就是创建空文件,touch还有更改文件的时间戳、修改时间等。



  用法:touch [选项]… 文件…



  Update the access and
  在Linux系统中touch命令最基本的功能就是创建空文件,touch还有更改文件的时间戳、修改时间等。
 
  用法:touch [选项]… 文件…

  Update the access and modification times of each FILE to the current time.
 
  A FILE argument that does not exist is created empty, unless -c or -h

  is supplied.
 
  A FILE argument string of – is handled specially and causes touch to

  change the times of the file associated with standard output.
 
  必选参数对长短选项同时适用。

  -a   只更改访问时间

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

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

  -f   (忽略)

  -h, –no-dereference  会影响符号链接本身,而非符号链接所指示的目的地

  (当系统支持更改符号链接的所有者时,此选项才有用)

  -m   只更改修改时间

  -r, –reference=FILE  use this file’s times instead of current time

  -t STAMP              use [[CC]YY]MMDDhhmm[.ss] instead of current time

  –time=WORD        change the specified time:

  WORD is access, atime, or use: equivalent to -a

  WORD is modify or mtime: equivalent to -m

  –help  显示此帮助信息并退出

  –version  显示版本信息并退出
 
  请注意,-d 和-t 选项可接受不同的时间/日期格式。
 
  1.使用touch命令创建一个空文件

  touch命令最简单和最基本的用法是通过命令行创建一个空文件。 如果您是精通终端的人,可以通过以下命令在命令行中快速创建新文件:
 
  $ touch “filename”
 
  示例:
 
  $ touch linuxidc

  在下面的示例中,我通过touch命令创建了一个名为“linuxidc”的空文件。 然后我使用ls命令查看系统中是否存在该文件,因为touch命令不会提示文件是否已创建。
 
  2.使用touch命令一次创建多个文件

  尽管cat命令和标准重定向符号也是通过命令行创建文件的方法,但touch命令具有优势,因为您可以一次创建多个文件。 您可以使用以下语法通过touch命令创建多个文件:
 
  $ touch linuxidc1 linuxidc2 linuxidc3 ….

  在下面的示例中,我通过touch命令同时创建了三个文件,然后使用ls命令查看这些文件的存在:
 
  3.强制避免使用touch命令创建新文件

  有时,如果新文件不存在,则需要避免创建新文件。 在这种情况下,您可以使用touch命令使用’-c’选项,如下所示:
 
  $ touch -c “filename”

  在下面的示例中,我使用touch命令避免创建上述新文件。
 
  touch -c linuxidc
 
  当我使用ls命令列出该文件时,以下输出将验证我的系统中是否存在此类文件。
 
  linuxidc@linuxidc:~$ touch -c linux

  linuxidc@linuxidc:~$ ls linux

  ls: 无法访问’linux’: 没有那个文件或目录
 
  4.更改文件的访问和修改时间

  touch命令的另一个用途是更改文件的访问时间和修改时间。
 
  让我们举一个例子来说明如何做到这一点。 我通过touch命令创建了一个名为“linuxmi”的文件,并通过stat命令查看了它的统计信息:

 
  然后我输入了以下touch命令:
 
  $ touch linuxmi

  此touch命令将访问和修改时间更改为再次为“linuxmi”运行touch命令的时间。 您可以在下上图中看到更改的访问和修改时间。
 
  5.更改访问时间或修改时间

  我们可以选择仅通过touch命令更改其中一个,而不是更改访问和修改时间。
 
  在下面的示例中,我创建了一个名为“linuxidc”的文件,并通过stat命令查看统计信息:
 
  我可以通过此文件上的touch命令使用’-a’选项来仅更改此文件的访问时间:
 
  $ touch -a linuxidc

  stat命令的输出现在显示访问时间已更改为我使用’-a’选项运行touch命令的时间:
 
  我可以通过此文件上的touch命令使用’-m’选项仅更改此文件的修改时间:
 
  $ touch -m linuxidc

  stat命令的输出现在显示修改时间已更改为使用’-m’选项运行touch命令的时间:
 
  6.如何将访问和修改时间从一个文件复制到另一个文件

  我们假设有一个名为linuxidcA的文件:
 
  Linux Touch命令的8种常见使用方法
 
  另一个名为linuxidcB的文件:
 
  Linux Touch命令的8种常见使用方法
 
  如果要将linuxidcA的访问和修改时间更改为linuxidcB的访问和修改时间,可以使用如下touch命令:
 
  $ touch linuxidcA -r sampleFileB
 
  stat命令的输出显示linuxidcA现在具有与samplefileB相同的访问和修改值。
 
  7.使用指定的时间戳创建新文件

  要创建具有指定时间戳的新空文件而不是创建它的实际时间,可以使用touch命令的以下语法:
 
  $ touch -t YYMMDDHHMM.SS “filename”
 
  以下示例显示了我的linuxidc上的stat命令如何显示其访问和修改时间是基于我通过touch命令创建时提供的时间戳:
 
  创建具有指定时间戳的新文件
 
  touch -t 2006151230.30 linuxidc
 
  8.将文件的时间戳更改为其他时间
 
    您可以使用touch命令的以下语法将现有文件的时间戳更改为其他时间:
 
  $ touch -c -t YYMMDDHHMM.SS “filename”

  touch -c -t 2008191130.30 linuxidc
 
  在下面的示例中,我通过touch命令更改了现有文件的时间戳,然后通过该示例文件上的stat命令验证了更改:
 
  将文件的时间戳更改为其他时间
 
  通过我们在本文中介绍的基本但有用的场景,您可以开始掌握touch命令并使用它通过Linux命令行快速执行一些看似复杂的任务。

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章