0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在Linux使用touch命令

CHANBAEK 来源:myfreax 作者:myfreax 2022-12-05 17:21 次阅读

Linux touch命令用于更改文件时间戳。但touch命令的最常见用法是创建文件。

在本教程中我们将说明如何在Linux 使用touch 命令修改文件与文件夹的访问时间atime、修改时间mtime和更改时间ctime。

还说明如何使用stat命令查看文件或者目录时间戳,修改为指定时间戳,使用另一个文件的时间戳,更改符号链接时间戳。

Linux 文件时间戳

在讨论如何使用touch命令之前,首先回顾一下Linux 文件时间戳。Linux 文件有三个时间戳。

访问时间atime全称Access time。即某些命令或者应用程序,例如如cat,vim或grep打开文件的最后时间。

修改时间mtime全称Modify time,即最后一次修改文件内容的时间。更改时间ctime全称Change time即文件的属性或内容最后一次更改文件权限,文件所有权或文件位置。

stat 命令查看文件时间戳

在修改文件或者文件夹的时间戳之前,需要知道文件目录/文件夹当前时间戳,从而确定是否修改时间戳。

你可以使用stat命令查看文件时间戳,例如命令stat file_name将会打印file_name文件的时间戳。

stat file_name

touch 命令创建文件

要创建文件,您需要具有对当目录的写权限。否则,您将收到权限拒绝的错误。

在不指定任何选项运行touch命令时,如果指定的文件不存在,touch将创建文件。如果文件已存在,touch命令将文件的访问时间和修改时间修改为当前时间。

要一次创建或修改多个文件,请指定多个文件名并使用空格符分隔文件名。同样指定的多个文件不存在则会创建。

如果您不希望touch命令创建文件,请使用-c/--no-create选项。ttouch命令将文件的访问时间和修改时间修改为当前时间。

touch file1
touch file1 file2 file3
touch -c file1

touch 命令修改访问时间和更改时间

默认情况下,如果未指定任何选项,touch命令将文件的访问和修改时间更新为当前时间。你可以使用touch命令的-a-m选项,仅更改其中一个时间戳。

当使用touch命令的-a选项时仅更改文件的访问时间,例如命令touch -a file1

使用touch命令的-m选项仅更改文件的修改时间。更改修改时间时,更改时间也将更新。例如命令touch -m file1

touch -a file1 #atime
touch -m file1 #mtime

touch 命令设置时间戳

touch命令还允许我们修改的文件时间戳。使用-d/--date=选项指定日期字符串。

日期字符串需要用单引号括起来。您还可以为touch命令提供部分日期时间的字符串。例如仅提供日期,自动将年份更改为当前年份。

-r/--reference=选项允许我们指定一个参考文件,并使用它的时间戳,而不是当前的时间。

例如命令touch -d '1 June 2018 11:02' file1将访问时间和修改时间更改为2018年6月1日11:02。

touch -d '12 June' file1命令不指定年年份,将访问时间和修改时间更改为2022年6月12日00:00。

touch -r file1 file2命令将file2的时间戳写到file1,这是使用另一个文件的时间戳示例。

touch -d '1 June 2018 11:02' file1
touch -d '12 June' file1
touch -r file1 file2

touch 命令修改符号链接时间戳

默认情况下,如果在符号链接使用touch命令修改时间戳,它将修改目标文件的时间戳。

在使用touch命令的-h/--no-dereference修改符号链接的时间戳时,则不会目标文件的时间戳。

touch -h symlink1

结论

至此你应该很好地理解如何使用touch命令。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11292

    浏览量

    209318
  • touch
    +关注

    关注

    0

    文章

    68

    浏览量

    34430
  • 命令
    +关注

    关注

    5

    文章

    683

    浏览量

    22011
  • 时间戳
    +关注

    关注

    0

    文章

    15

    浏览量

    2593
收藏 人收藏

    评论

    相关推荐

    何在Linux使用iostat命令

    IO等待或者`iowait`,`wait`,`wa`,`%iowait`,或者`wait%`通常可以通过Linux系统监控工具查看。例如命令行工具top、sar、atop等。
    的头像 发表于 01-04 17:17 1559次阅读

    何在Linux中使用htop命令

    本文介绍如何在 Linux 中使用 htop 命令
    的头像 发表于 12-04 14:45 2008次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Linux</b>中使用htop<b class='flag-5'>命令</b>

    浅谈Linux touch命令实例

    touch命令可以用来修改文件的访问/修改时间戳,使用touch命令创建一个空白文件,需要的语法是“linuxidc@linuxidc:~$ tou
    的头像 发表于 02-13 14:08 5825次阅读
    浅谈<b class='flag-5'>Linux</b> <b class='flag-5'>touch</b><b class='flag-5'>命令</b>实例

    linux中 9 个touch命令介绍

    touch 命令用于创建空文件,也可以更改 Unix 和 Linux 系统上现有文件时间戳。这里所说的更改时间戳意味着更新文件和目录的访问以及修改时间。
    发表于 05-02 17:05 3256次阅读
    <b class='flag-5'>linux</b>中 9 个<b class='flag-5'>touch</b><b class='flag-5'>命令</b>介绍

    Linuxtouch的9个命令示例

    默认情况下,每当我们尝试使用 touch 命令更改符号链接文件的时间戳时,它只会更改原始文件的时间戳。如果你想更改符号链接文件的时间戳,则可以使用 touch 命令中的 -h 选项来实
    的头像 发表于 05-08 14:17 3896次阅读
    在<b class='flag-5'>Linux</b>下<b class='flag-5'>touch</b>的9个<b class='flag-5'>命令</b>示例

    linux有哪些常用的命令

     Linux命令非常之多,分为内部命令和外部命令
    发表于 02-27 08:00 4次下载
    <b class='flag-5'>linux</b>有哪些常用的<b class='flag-5'>命令</b>

    Linux应用开发-串口下载命令rzsz交叉编译

    rz/sz工具是通过Zmodem协议传输文件的命令,常用于Linux与windows之前的数据传输。 这篇文章就介绍如何在交叉编译rz/sz命令,并在
    的头像 发表于 08-14 09:20 2471次阅读

    何在Linux使用pidof命令

    `pidof`是一个命令行程序,可让您找到正在运行程序的进程ID。在教程中,我们将说明如何在Linux 使用pidof命令
    的头像 发表于 12-05 17:01 2319次阅读

    何在Linux使用rpm命令

    RPM是基于RedHat Linux发行版的软件包管理器,例如CentOS和Fedora。RPM还指`rpm`命令和`.rpm`文件扩展名称。
    的头像 发表于 01-04 17:14 1664次阅读

    何在Linux上使用粘贴命令

    Linux中的粘贴命令是一个有用的工具,用于将多个文件或文本行合并到单个文件或输出中。它通常与剪切命令结合使用,允许用户剪切特定行或文本部分并将其粘贴到其他地方。在本文中,小编将探讨 Linu
    的头像 发表于 02-08 16:58 1827次阅读

    何在Linux中高效运行终端命令

    Linux 终端是一个功能强大的工具,允许您使用命令执行各种系统操作。文件操作、程序管理和服务自动化是您可以使用 shell 命令高效执行的一些操作。
    的头像 发表于 03-20 09:39 714次阅读

    何在Linux中使用progress命令

    progress 命令是一个简单但功能强大的 Linux/Unix 命令行工具,可让用户查看文件操作的进度。
    的头像 发表于 04-08 15:51 2454次阅读

    何在Linux中高效运行终端命令

    Linux 终端是一个功能强大的工具,允许您使用命令执行各种系统操作。文件操作、程序管理和服务自动化是您可以使用 shell 命令高效执行的一些操作。
    的头像 发表于 04-13 10:34 672次阅读

    何在Linux命令行中运行Python脚本

    Python 脚本。 在本文中,我们将详细介绍如何在 Linux 命令行中运行 Python 脚本。我们将讨论以下主题:
    的头像 发表于 05-12 14:49 1681次阅读

    恒讯科技分析:如何在Linux上使用rm命令删除文件和目录?

    本指南展示了如何在Linux中使用rm命令行删除文件、目录和其他内容?
    的头像 发表于 06-09 17:02 1174次阅读