touch - change file timestamps

touch [文件名] 就是“摸”一下文件,如果文件不存在,就建立新文件;如果文件存在,就改变文件的访问时间atime等时间戳信息。

语法:
  touch [OPTION]... FILE...

  touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]

参数:

  • -a 改变档案的读取时间记录。

    • [root@oldboy oldboy]# stat new.txt
      File: `new.txt'
      Size: 120 Blocks: 8 IO Block: 4096 regular file
      Device: 803h/2051d Inode: 275539 Links: 1
      Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
      Access: 2019-11-06 22:10:48.234818898 +0800
      Modify: 2019-11-07 18:48:17.389776861 +0800
      Change: 2019-11-07 18:48:17.390776816 +0800 [root@oldboy oldboy]# touch new.txt -a # touch -a修改了atime和ctime
      [root@oldboy oldboy]# stat new.txt
      File: `new.txt'
      Size: 120 Blocks: 8 IO Block: 4096 regular file
      Device: 803h/2051d Inode: 275539 Links: 1
      Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
      Access: 2019-11-07 19:49:23.350646538 +0800
      Modify: 2019-11-07 18:48:17.389776861 +0800
      Change: 2019-11-07 19:49:23.350646538 +0800

      touch -a的效果

  • -m 改变档案的修改时间记录。
    • [root@oldboy oldboy]# stat new.txt
      File: `new.txt'
      Size: 120 Blocks: 8 IO Block: 4096 regular file
      Device: 803h/2051d Inode: 275539 Links: 1
      Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
      Access: 2019-11-07 19:49:23.350646538 +0800
      Modify: 2019-11-07 18:48:17.389776861 +0800
      Change: 2019-11-07 19:49:23.350646538 +0800 [root@oldboy oldboy]# touch new.txt -m # touch -m 修改了mtime和ctime
      [root@oldboy oldboy]# stat new.txt
      File: `new.txt'
      Size: 120 Blocks: 8 IO Block: 4096 regular file
      Device: 803h/2051d Inode: 275539 Links: 1
      Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
      Access: 2019-11-07 19:49:23.350646538 +0800
      Modify: 2019-11-07 19:51:19.971719215 +0800
      Change: 2019-11-07 19:51:19.971719215 +0800

      touch -m的效果

  • -c,--no-create 
    • do not create any files
    • 假如目的档案不存在,不会建立新的档案。
    • [root@oldboy oldboy]# touch -c nn
      [root@oldboy oldboy]# ls nn
      ls: cannot access nn: No such file or directory

      touch -c不创建文件

  • -f
    • ignored
    • 不使用,是为了与其他 unix 系统的相容性而保留。
  • -r,--reference=FILE
    • use this file's times instead of current time
    • 使用参考档的时间记录,与 --file 的效果一样。
  • -d,--date=STRING
    • parse STRING and use it instead of current time
    • 设定时间与日期,可以使用各种不同的格式。
  • -t
    • use [[CC]YY]MMDDhhmm[.ss] instead of current time
    • 设定档案的时间记录,格式与 date 指令相同。

示例:

1. 查看touch file的前后结果,发现修改了atime,ctime和mtime,修改了文件的时间属性。

[root@oldboy oldboy]# stat name.txt
File: `name.txt'
Size: 35 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 275549 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-11-07 19:46:37.014647959 +0800
Modify: 2019-11-07 19:46:37.014647959 +0800
Change: 2019-11-07 19:46:37.014647959 +0800 [root@oldboy oldboy]# touch name.txt [root@oldboy oldboy]# stat name.txt
File: `name.txt'
Size: 35 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 275549 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-11-07 19:47:19.574647813 +0800
Modify: 2019-11-07 19:47:19.574647813 +0800
Change: 2019-11-07 19:47:19.574647813 +0800

【Linux常见命令】touch命令的更多相关文章

  1. Linux常见目录及命令介绍

    一.Linux中常用的目录介绍:     /        -根目录     /bin    -命令保存目录(普通用户亦可读取的命令)     /boot    -启动目录,启动相关文件     /d ...

  2. linux 常见名词及命令(三)

    tar 用于对文件打包压缩或解压. 示例: 打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名 解压并展开压缩包:tar -zxvf 压缩包名.tar.gz -c 创建压缩文件 -x ...

  3. Linux中的touch命令总结(一)

    touch命令有两个主要功能: 改变 timestamps 新建_空白_文件 例如,不带任何参数地输入: touch file1 file2 file3 将在当前目录下新建三个空白文件:file1, ...

  4. Linux常见的Shell命令

    1.具体的shell命令用法可以通过help或man命令进入手册来查询其具体的用法.2.终端本质上对应着linux上的/dev/tty设备,linux的多用户登录就是通过不同的/dev/tty设备完成 ...

  5. 性能工具之linux常见日志统计分析命令

    引言 我前几天写过的性能工具之linux三剑客awk.grep.sed详解,我们已经详细介绍 linux 三剑客的基本使用,接下来我们看看具体在性能测试领域的运用,本文主要介绍的是在 Tomcat 和 ...

  6. linux 常见名词及命令(一)

    linux  PK  wondows 稳定且有效率.免费或少许费用.漏洞少且修补快.多任务多用户. 安全的用户及文件权限策略.适合小内核程序的嵌入系统.相对不耗资源. 热门的开源系统 红帽企业系统(R ...

  7. linux 常见名词及命令(五)

    计划任务服务之一次性任务: at <时间> 安排一次性任务 atq 或at -l 查看任务列表 at -c 序号 预览任务与设置环境 atrm 序号 删除任务 安排任务示例: 在23:30 ...

  8. linux 常见名词及命令(二)

    pwd 用于显示当前的工作目录. cd 用于切换工作路径 cd - 切换到上一次的目录 cd ~ 切换到家目录 cd ~username 切换到其他用户的家目录 cd .. 切换到上级目录 ls 用于 ...

  9. linux 常见名词及命令(六)

    查看软件安装位置 : dpkg -L 软件包名字 ubuntu环境的apache相关命令: 查看是否启动:ps -aux | grep httpd  或者 netstat -an | grep :80 ...

  10. linux 常见名词及命令(四)

    yum仓库的配置 yum仓库的配置文件存放在/etc/yum.repos.d/目录中. 第一步:切换到/etc/yum.repos.d/目录中. 第二步:使用vim编辑器打开一个名为'rhel7.re ...

随机推荐

  1. eclipse报错:problems during content assist

    自动提示出错: 解决办法:Windows->preferences->java->editor->content assist->advanced 取消java prop ...

  2. Taro Next H5 跨框架组件库实践

    作者:凹凸曼 - JJ Taro 是一款多端开发框架.开发者只需编写一份代码,即可生成各小程序端.H5 以及 React Native 的应用. Taro Next 近期已发布 beta 版本,全面完 ...

  3. MTK Android 平台语言支持状态

    Language English Name Chinese Name Code GB ICS  JB  KK L العربية Arabic(Israel) 阿拉伯语(以色列) ar_IL Y Y ...

  4. 深入理解== 和 equals 的本质区别

    简介 初学者常常被"= =“和‘equals ’所折磨,为什么,因为他们的大概意思相同,都是比较两个对象是否相等,而又不搞不清他们的具体比较两个对象相等的原理是什么,所以经常搞混淆,接下来我 ...

  5. ssm整合简单例子

    1.首先新建一个maven项目 2.在pom.xml文件中加入以下代码引入包 <properties> <project.build.sourceEncoding>UTF-8& ...

  6. 30.6 HashMap的使用

    /* * * 使用HashMap存储数据并遍历(字符串作为key) * *使用HashMap存储数据并遍历(自定义对象作为key) */ 字符串做key和Map的使用一样,重点介绍自定义对象作为key ...

  7. Array(数组)对象-->concat() 方法

    1.定义和用法 concat() 方法用于连接两个或多个字符串. 语法: string.concat(string1, string2, ..., stringX) 举例: var str1='hel ...

  8. jmeter 信息头Bearer

    1.数据规则 2.登录时获取token信息 3.正则表达式获取token值 说明: (1)引用名称:下一个请求要引用的参数名称,如填写title,则可用${title}引用它. (2)正则表达式: ( ...

  9. Docker-准备Docker环境

    1. 前言 要学习Docker,首先要搭建出虚拟机和docker环境.我的笔记本电脑是windows7系统,用VirtualBox创建虚拟机.虚拟机操作系统为CentOS7.5,Docker版本为18 ...

  10. Cobalt Stike使用教程

    目录: 安装与连接 监听器Listner 基本使用方法--Cobalt Strike生成后门 Beacon详解 菜单栏与视图 文件管理与进程管理 浏览器代理 Cobalt Strike扩展 提权 横向 ...