首页 > 系统相关 >Linux touch命令:创建文件及修改文件时间

Linux touch命令:创建文件及修改文件时间

时间:2023-10-28 23:02:28浏览次数:25  
标签:文件 -- 修改 bols 时间 Linux touch root

既然知道了如何在 Linux 系统中创建目录,接下来你可能会想在这些目录中创建一些文件,可以使用 touch 命令。

Linux touch命令:创建文件及修改文件时间_数据

需要注意的是,touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数)。

Linux 系统中,每个文件主要拥有 3 个时间参数(通过 stat 命令进行查看),分别是文件的访问时间、数据修改时间以及状态修改时间:

  • 访问时间(Access Time,简称 atime):只要文件的内容被读取,访问时间就会更新。例如,使用 cat 命令可以查看文件的内容,此时文件的访问时间就会发生改变。
  • 数据修改时间(Modify Time,简称 mtime):当文件的内容数据发生改变,此文件的数据修改时间就会跟着相应改变。
  • 状态修改时间(Change Time,简称 ctime):当文件的状态发生变化,就会相应改变这个时间。比如说,如果文件的权限或者属性发生改变,此时间就会相应改变。

touch 命令的基本格式如下:

[root@localhost ~]# touch [选项] 文件名

选项:

Linux touch命令:创建文件及修改文件时间_修改时间_02

  • -a:只修改文件的访问时间;
  • -c:仅修改文件的时间参数(3 个时间参数都改变),如果文件不存在,则不建立新文件。
  • -d:后面可以跟欲修订的日期,而不用当前的日期,即把文件的 atime 和 mtime 时间改为指定的时间。
  • -m:只修改文件的数据修改时间。
  • -t:命令后面可以跟欲修订的时间,而不用目前的时间,时间书写格式为 YYMMDDhhmm

可以看到,touch 命令可以只修改文件的访问时间,也可以只修改文件的数据修改时间,但是不能只修改文件的状态修改时间。因为,不论是修改访问时间,还是修改文件的数据时间,对文件来讲,状态都会发生改变,即状态修改时间会随之改变(更新为操作当前文件的真正时间)。

【例 1】 touch 命令创建文件。

[root@localhost ~]#touch bols
#建立名为 bols 的空文件

【例 2】 在例 1 的基础上修改文件的访问时间。

[root@localhost ~]#ll --time=atime bols
#查看文件的访问时间
-rw-r--r-- 1 root root 0 Sep 25 21:23 bols
#文件上次的访问时间为 9 月 25 号 21:23
[root@localhost ~]#touch bols
[root@localhost ~]#ll --time=atime bols
-rw-r--r-- 1 root root 0 May 15 16:36 bols
#而如果文件已经存在,则也不会报错,只是会修改文件的访问时间。

【例 3】 修改 bols 文件的 atime 和 mtime。

Linux touch命令:创建文件及修改文件时间_修改文件_03

[root@localhost ~]# touch -d "2017-05-04 15:44" bols
[root@localhost ~]# ll bols; ll --time=atime bols; ll --time=ctime bols
-rw-r--r-- 1 root root 0 May 4 2017 bols
-rw-r--r-- 1 root root 0 May 4 2017 bols
-rw-r--r-- 1 root root 0 Sep 25 21:40 bols
#ctime不会变为设定时间,但更新为当前服务器的时间

Linux touch命令:创建文件及修改文件时间_修改时间_04

标签:文件,--,修改,bols,时间,Linux,touch,root
From: https://blog.51cto.com/u_15641375/8073061

相关文章

  • 用友NC accept.jsp任意文件上传漏洞
    漏洞简介用友NCaccept.jsp处存在任意文件上传漏洞,攻击者通过漏洞可以获取网站权限,导致服务器失陷。漏洞复现fofa语法:app="用友-UFIDA-NC"登录页面如下:POCPOST/aim/equipmap/accept.jspHTTP/1.1Host:106.14.160.167:8090User-Agent:Mozilla/5.0(WindowsNT6.4;WOW......
  • c# 如何实现把word文件转换成Pdf文件?
    最近开发一个项目,要实现把word文件转换成pdf文件。实现的方案大概分为三种:1、利用微软的库Microsoft.Office.Interop.Word来进行Word到PDF的转换【需要安装office软件】2、利用WPS的COM组件来实现Word到PDF的转换【需要安装wps软件】3、利用商业插件实现Word到PDF的转换【......
  • 第九周Linux学习笔记
    本周的学习内容属实有点多(差点跟不上,浅浅吐槽一下),学习了第五章进程管理以及第六章I/O重定向。具体命令及其作用在下面一一列举。第五章:进程管理进程小tips:每个进程都有唯一的进程表示PID;进程有就绪态、阻塞态和运行态三个状态;进程有的是密集型有的是疏散型。1、“psaux”命令,......
  • Win10 ssh客户端 scp 传输linux文件到windows 端
    1Window10安装openssh服务2启动windowssshd服务netstartsshd3scplinux向windows传输文件Win10中打开powershell,登录ssh把linux下的shell01.sh传到window10的桌面上[email protected]:/C:/Users/admin/Desktop......
  • ELF文件结构分析(x86 gnu版本)
    为了学习使用objdump和size命令,以simple_section.c为例进行分析。编译环境是x86ubuntu,首先编译这个文件。gcc-csimple_section.c命令解释objdump作用:分析二进制文件的内容信息objdump--helpUsage:objdump<option(s)><file(s)>Displayinformationfromobject<fi......
  • ELF文件结构分析(arm gnu版本)
    为了学习使用objdump和size命令,以simple_section.c为例进行分析。编译环境是x86ubuntu下的交叉编译arm指令:首先编译这个文件。arm-none-eabi-gcc-csimple_section.c命令解释objdump作用:分析二进制文件的内容信息arm-none-eabi-objdump--helpUsage:arm-none-eabi-objd......
  • Linux进程函数
    1.进程相关知识PCB进程控制块包含的信息进程id。系统中每个进程有唯一的id,在C语言中用pid_t类型表示,其实就是一个非负整数。进程的状态,有就绪、运行、挂起、停止等状态。进程切换时需要保存和恢复的一些CPU寄存器。描述虚拟地址空间的信息。描述控制终端的信息。当前工作......
  • 第八周Linux教材第四章学习笔记——并发编程
     第四章 并发编程4.1并行计算导论在早期,大多数计算机只有一个处理组件,称为处理器或中央处理器(CPU)。受这种硬件条件的限制,计算机程序通常是为串行计算编写的。要求解某个问题,先要设计一种算法,描述如何一步步地解决问题,然后用计算机程序以串行指令流的形式实现该算法。在只有......
  • 【nodejs】批量获取文件的时长
    因为ffmpeg.ffprobe是异步的,需要使用promise同步,然后Promise.all将所有的Promise执行结果处理后返回/***获取文件列表时长(同步获取返回)*@param{Object}fileList*/asyncgetFileDuration(fileList){//初始化letpromises=fileList.map(fil......
  • 系统集成易混淆知识点汇总-项目管理计划、项目文件
    概念:(1)项目管理计划:项目管理计划是项目的主计划或称为总体计划,它确定了执行、监控和结束项目的方式和方法,包括项目需要执行的过程、项目生命周期、里程碑和阶段划分等全局性内容。例如:范围管理计划、进度管理计划等各类子管理计划、三大基准。(2)项目文件:项目文件是会影响项目管理......