《每天一个Linux命令》 -- (3) touch命令

欢迎阅读《每天一个Linux命令》系列!在本篇文章中,将说明touch命令用法。

每天一个Linux命令 – (2) touch命令

在Linux系统中,touch命令是一个非常常用的命令,用于创建空文件或修改文件的时间戳。本文将详细介绍touch命令的使用方法和常见选项。

简介

  • touch命令的英文原意是"change file timestamps",即用于改变文件的时间戳。
  • 在Linux系统中,touch命令的路径通常为/bin/touch,并且所有用户都有执行该命令的权限。

通过命令which可以查看到touch命令的路径

[root@localhost ~]# which touch
/usr/bin/touch

语法

touch 	[选项]  文件名

选项

选项说明
-a仅修改文件的访问时间。
-c仅修改文件的状态修改时间。
-m仅修改文件的数据修改时间。
-d 时间指定文件的修改时间。

示例

下面通过一些示例来演示touch命令的使用方法:

创建一个空文件

# 创建一个空文件
touch test.txt

修改文件的修改时间

# 修改文件的修改时间为当前时间
touch -m test.txt

修改文件的访问时间

# 修改文件的访问时间为当前时间
touch -a test.txt

修改文件的状态修改时间

# 修改文件的状态修改时间为当前时间
touch -c test.txt

指定文件的修改时间

# 指定文件的修改时间为2023-08-02 12:00:00
touch -t 2023-08-02 12:00:00 test.txt

验证修改过的文件时间
当使用touch命令修改文件的时间后,可以通过使用ls命令或stat命令来验证时间是否已被成功修改。

使用ls命令可以查看文件的访问时间、修改时间和状态修改时间。示例如下:

ls -l test.txt

验证:

[root@chatgpt-test tmp]# ls -l test.txt    
-rw-r--r--. 1 root root 76 1128 03:47 test.txt
[root@chatgpt-test tmp]# touch -m test.txt 
[root@chatgpt-test tmp]# touch -a test.txt 
[root@chatgpt-test tmp]# touch -c test.txt 
[root@chatgpt-test tmp]# ls -l test.txt 
-rw-r--r--. 1 root root 76 127 23:45 test.txt

上述命令将显示test.txt文件的详细信息,包括访问时间、修改时间和状态修改时间。

使用stat命令可以获取文件的详细时间信息。示例如下:

stat test.txt

验证:

[root@chatgpt-test tmp]# stat test.txt文件:"test.txt"大小:76              块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:18092200    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:user_tmp_t:s0
最近访问:2023-12-07 23:45:59.161055000 +0800
最近更改:2023-12-07 23:45:59.161055000 +0800
最近改动:2023-12-07 23:45:59.161055000 +0800
创建时间:-

上述命令将显示test.txt文件的详细时间信息,包括访问时间、修改时间和状态修改时间。

通过以上命令,你可以验证touch命令是否成功修改了文件的时间。如果时间与你设置的时间一致,那么说明修改成功。如果时间没有改变,可能是因为文件系统不支持修改时间戳或者你没有足够的权限进行修改。

关于Linux中文件的三个时间戳,我补充如下:

  • 访问时间:文件被访问的最后一次时间。
  • 数据修改时间:文件的数据被修改的最后一次时间。
  • 状态修改时间:文件的状态(例如文件权限、所有者等)被修改的最后一次时间。

touch命令只能修改访问时间和数据修改时间,不能修改状态修改时间。修改访问时间或数据修改时间都会导致状态修改时间的变化。

小结

touch命令是一个非常实用的命令,可以用于创建空文件或修改文件的时间戳。通过本文的介绍,你应该已经了解了touch命令的基本使用方法和常见选项。在实际使用中,你可以根据需要灵活运用touch命令来管理文件的时间戳。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/206280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL老是卸载不干净,不会删除注册表,安装总是报错

给大家推荐一款非常使用的工具 geek点击官网下载。 安装完成主页就长这样: 右键点击你要删除的MySQL卸载即可。自动帮你清空注册表等信息。 谁用谁知道!!! 用了感觉不错的话记得回来给我点赞加评论哦!!&…

c 语言常用的加密算法——MD5

在C语言中,常用的加密算法包括以下几种: AES加密算法:这是一种对称加密算法,广泛用于数据加密。在C语言中,可以使用openssl库来实现AES加密。RSA加密算法:这是一种非对称加密算法,即加密和解密…

JVM 运行时参数

面试题 JVM的参数,你知道的说一下 (百度) 说说你知道的几种主要的JVM参数(京东) JVM调优调的哪些参数?在哪里写这些参数? (亚信) 内存调优参数都有什么?&am…

MTU TCP-MSS(转载)

MTU MTU 最大传输单元(Maximum Transmission Unit,MTU)用来通知对方所能接受数据服务单元的最大尺寸,说明发送方能够接受的有效载荷大小。 是包或帧的最大长度,一般以字节记。如果MTU过大,在碰到路由器时…

介绍java spring 提供的默认数据库持久化技术 JdbcTemplate基本演示

之前 我们说过spring贴心的内嵌了三种数据源形式 其中默认为HikariCP 其实 spring 也提供了持久化数据库连接技术 这个技术其实大部分都接触过 那就是 JDBC 随着时代的发展 用他的人也越来越少了 那么 我们要演示 JdbcTemplate 导入 mybatis 或 mybatis-plus 的片段 就要注掉了…

【从零开始学习JVM | 第五篇】快速了解运行时数据区

前言: 当谈论 Java 程序的运行机制时,JVM(Java 虚拟机)的运行时数据区是一个必不可少的话题。JVM 运行时数据区是 Java 程序在运行过程中分配内存和管理数据的重要区域,它包括了方法区、堆、虚拟机栈、程序计数器和本地…

Linux---日志管理

本章主要介绍Linux中的日志管理 了解rsyslog是如何管理日志的查看日志的方法 日志管理简介 工作当中的日志,特指硬件和软件的日志,管理员可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。日志管理包括管理系统日志、应…

智能外呼常见场景有哪些?

智能外呼常见场景是什么? 智能外呼在各种场景下都有应用,以下是一些常见的场景: 营销推广 通过智能外呼向潜在客户进行产品或服务的宣传和推广,收集客户对产品或服务的反馈。根据客户的反馈自动调整宣传策略,从而提…

2023年全国职业院校技能大赛“ 信息安全管理与评估” 测试题3

一、 单选题 ( 每题 2 2 分,共 共 5 35 题,共 共 0 70 分) 1、脏数据是指( )。 A、 不健康的数据 B、 缺失的数据 C、 多余的数据 D、 被撤销的事务曾写入库中的数据 2、滥发各种广告和虚假信息传播计…

mac本地部署stable-diffusion

下载Homebrew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" ①输入“1”选择中科大版本,然后输入Y(YES),直接输入开机密码(不显示)然后回车确认,开始下载 ②…

LeeCode每日刷题12.7

移除元素 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出…

小航助学2023年6月GESP_Scratch二级真题(含题库答题软件账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号 单选题3.00分 删除编辑附件图文 答案:D 第1题高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 A、编辑B、…

关于popen执行命令无效,但是手动命令行执行有效的问题

问题:今天通过sshpass和scp拷贝其他芯片文件的时候发现代码里面通过popen执行的命令并没有把文件拷贝过来,然后手动执行相同的命令可以拷贝过来。 原因: popen和system可能检测不到用户的环境变量,导致找不到sshpass和scp命令&am…

2008.出租车的最大盈利

​​题目来源: leetcode题目,网址:2008. 出租车的最大盈利 - 力扣(LeetCode) 解题思路: 哈希表动态规划。根据终点区分不同的路线,然后进行动态规划。dp[i] 表示以当前节点为终点时的最大盈利。…

​LeetCode解法汇总1466. 重新规划路线

目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 描述: n 座城市&…

在王者荣耀中脸探草丛的正确姿势是什么?

引言 Cocos中躲草丛效果的实现原理。 在游戏开发中,我们经常用透视或者半透明效果去表现模型被遮挡的效果。 本文将介绍一下如何在Cocos中实现王者荣耀中的躲草丛效果。 本文源工程在文末获取,小伙伴们自行前往。 躲草丛效果的实现原理 要在Cocos中…

Android Studio的笔记--String和byte[]

String和byte[]的相互转换,字节数组转换 String转换byte[]文本16进制字节数组 byte[]转换String文本16进制 其它 String转换byte[] 文本 将字符串(String)转换为字节(byte)的方法。默认使用的是UTF-8编码 StandardCh…

Qt设置应用程序字体

目的 由于微软雅黑字体具有版权效应, 导致实际项目中需要load其他字体, 比如说应用程序默认字体为思源黑体-Mdeium黑度。 通用做法在qrc中添加字体资源,SourceHanSansCN-Medium.ttf, 然后在main函数中动态加载字体文件。 如果后…

Linux本地部署1Panel服务器运维管理面板并实现公网访问

文章目录 前言1. Linux 安装1Panel2. 安装cpolar内网穿透3. 配置1Panel公网访问地址4. 公网远程访问1Panel管理界面5. 固定1Panel公网地址 前言 1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、…

剑指 Offer(第2版)面试题 20:表示数值的字符串

剑指 Offer(第2版)面试题 20:表示数值的字符串 剑指 Offer(第2版)面试题 20:表示数值的字符串解法1:模拟解法2:分段匹配解法 3:DFA 剑指 Offer(第2版&#xf…