总览

touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名)...

被废弃的版本:
touch [-acm][ugly_time]
file(文件)...

GNU版本:
touch [-acfm] [-r file(参照文件)] [-t
decimtime(时间值)] [-d time(时间值)]
[--time={atime,access,use,mtime,modify}]
[--date=time]
[--reference=
file] [--no-create] [--help] [--version] [--]
file(文件)...

用法描述

touch 修改每个指定文件 file
的存取(access)和/或修改(modification)时间戳记.除非使用-r或-t选项,这些时间戳记都将修改为当前的时间.使用-r选项时,这些戳记将按照文件
ref_file 的时间戳记来修改(即变得和ref_file时间戳记值相同).使用-t选项,则这些戳记将按照给定的时间值 time
进行修改.同时使用或同时不使用选项-a和-m,存取和修改两个戳记都将被更改.若只使用选项-a,则只修改存取戳记.同样,只使用选项-m,则只修改修改戳记.若要修改戳记的文件尚不存在,除非使用-c选项,touch
将创建它(作为空文件,并赋予0666的模式且受umask值的限制).

POSIX标准定义的选项

-a
修改文件 file 的存取时间.
-c
不创建文件 file.
-m
修改文件 file file

-r ref_file
将参照文件 ref_file 相应的时间戳记的数值作为指定文件 file 时间戳记的新值.
-t time
使用指定的时间值 time 作为指定文件 file 相应时间戳记的新值.此处的 time
规定为如下形式的十进制数∶

[[CC]YY]MMDDhhmm[.SS]

这里,CC为年数中的前两位,即”世纪数”;YY为年数的后两位,即某世纪中的年数.如果不给出CC的值,则touch 将把年数CCYY限定在1969--2068之内.MM为月数,DD为天将把年数CCYY限定在1969--2068之内.MM为月数,DD为天数,hh为小时数(几点),mm为分钟数,SS为秒数.此处秒的设定范围是0--61,这样可以处理闰秒.这些数字组成的时间是环境变量TZ指定的时区中的一个时间.由于系统的限制,早于1970年1月1日的时间是错误的.

POSIX标准的细节

已被废弃的touch版本使用时会出现模棱两可的情况: ugly_time 到底是时间值还是文件名?由于此种版本尚未提供-r或-t选项,所以使用时至少要有两个命令行参数,作为时间值, ugly_time 必须为第一个参数.这里的 ugly_time 是一个形为MMDDhhmm[yy]的八位或十位整数.其中,yy是介于69--99之间表示1969--1999之间某一年的两位数,如果不给,表示当前这一年.

GNU版本的细节

如果第一个指定文件 file 的名子从形式上说是选项 -t 的有效参数,并且没有给出选项 -d, -r-t -t

数,也没有给`--'选项,那么这个文件名将被解释成时间值.

一般情况下,利用 touch 修改文件的时间戳记时要求用户时该文件的所有者.除非只是把文件的存取和修改两种时间戳记修改为当前的时刻,这种情况只要求用户拥有对该文件`写'的权利就行了.

GNU版本选项用法简介

-a, --time=atime, --time=access, --time=use
只修改存取时间.
-c, --no-create
如果要修改的文件不存在,此选项使touch不去创建它.
-d, --date=time
使用时间值 time 代替指定文件的戳记值.可以包含月份名,时区名以及`am'和 `pm'等等.
-f
此选项用于兼容BSD版本的 touch(1).
-m, --time=mtime, --time=modify
只修改修改时间.
-r file, --reference=file
使用参照文件 file 的时间戳记值修改指定文件的时间戳记.
-t decimtime
这里时间值 decimtime 的格式为MMDDhhmm[[CC]YY][.ss] 从左至右分别是月份,日期,小时,分钟,可选的世纪和年,以及可选的秒. touch 将用这组数值修改指定文件的时间戳记.请注意,这个格式与POSIX标准所规定的格式并不一样.

GNU版本通用选项

--help
使程序在标准输出上显示该程序的用法信息.
--version
使程序在标准输出上打印其版本信息.

GNU版本通用选项

--help
使程序在标准输出上显示该程序的用法信息.
--version
使程序在标准输出上打印其版本信息.
--
用于使程序终止对选项的解析.

运行环境

环境变量TZ一般用来表明所给时刻是哪个时区的.而环境变量LANG, LC_ALL, LC_CTYPE 和 LC_MESSAGES还是一般情况下的意义.

遵循

GNU版touch的-t选项的参数所用格式并不符合POSIX标准1003.2的描述.

用法实例

如果文件foo并不存在,那么命令`touch foo'将创建它,并把最后的修改时间改到现在的时刻.这一特点经常用来引导 make 的执行.

touch - 修改文件的时间戳记.的更多相关文章

  1. linux 修改文件的时间属性

    二.修改文件时间 创建文件我们可以通过touch来创建.同样,我们也可以使用touch来修改文件时间.touch的相关参数如下: -a : 仅修改access time. -c : 仅修改时间,而不建 ...

  2. Qt下如何修改文件的时间(全平台修改)

    提供一个全平台修改文件的时间的方法,希望大家喜欢 /* UTIME.C: This program uses _utime to set the * file-modification time to ...

  3. 在Delphi中获取和修改文件的时间

    转载自 http://www.cnblogs.com/jieke/archive/2013/01/11/2855782.html 本文介绍了在Delphi中利用系统函数和Windows API函数调用 ...

  4. touch修改文件的修改时间和访问时间,ls --full-time显示文件详细,stat命令

    1. 同时修改文件的修改时间和访问时间 touch -d "2010-05-31 08:10:30" test.doc 2. 只修改文件的修改时间 touch -m -d &quo ...

  5. Windows 下使用 工具修改文件的 时间

    1. 下载工具 https://www.cr173.com/soft/12992.html 2. 使用工具修改即可 3. 忘记了东西处理挺方便的.  尤其是往前改日期的时候.

  6. touch修改文件时间戳

    https://blog.csdn.net/lsbhjshyn/article/details/51443304 touch -t 20181011000.01 text.txt

  7. linux中touch命令参数修改文件的时间戳(转)

    linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ...

  8. linux中touch命令参数修改文件的时间戳(转载)

    转自:http://os.51cto.com/art/200908/144237.htm linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存 ...

  9. Linux查看和修改文件时间

    参考http://www.361way.com/chang-file-time/1632.html 一:查看时间 1:查看文件的具体时间信息 File: `probn' Size: Blocks: I ...

随机推荐

  1. [已解决]报错:xlrd.compdoc.CompDocError: Workbook: size exceeds expected 17920 bytes; corrupt?

    报错代码如下: filePath='test.xls' data=pd.read_excel(filePath) print(data.head()) 报错内容如下: Traceback (most ...

  2. SpringMVC学习(4):数据绑定1 @RequestParam

    在系列(3)中我们介绍了请求是如何映射到一个action上的,下一步当然是如何获取到请求中的数据,这就引出了本篇所要讲的内容-数据绑定. 首先看一下都有哪些绑定数据的注解: 1.@RequestPar ...

  3. 小程序图片在安卓上拉伸的问题&导航&返回首页

      今天提了一个bug,有几张图片在安卓上面加载会先变大拉伸再恢复正常 出现这样的问题应该是用widthFix造成的 具体原因还不是很清楚,因为都是本地图片,所以我就直接把高也设置好就暂时没有这个问题 ...

  4. 57. Collections(list的工具类)、Arrays(数组的工具类)

    List集合的工具类(Collections): 注意:Collection是单列集合的根接口  Collections是操作集合对象的工具类 1.对list集合排序: sort(List) 根据自然 ...

  5. Dart编程实例 算术操作符

    Dart编程实例 算术操作符 void main() { var num1 = 101; var num2 = 2; var res = 0; res = num1+num2; print(" ...

  6. CTSC2019

    (upd:随机立方体AC) 太菜了只会部分分.以后慢慢补坑吧…… 随机立方体: 30分: 正常人都能想到的的转移状态(我的确是弱智),从大往小填数,记录有多少个极大值点和三个方向上各占了多少.转移可以 ...

  7. I - Nice to Meet You

    传送门 和10-17 B 君的第三题 类似,应该算是简化版,给出了固定的点. f[s]表示只考虑连端都在s集合中的边,s中的固定点(1或者2)能到达整个集合的方案数. 预处理c[s]表示s集合中的总边 ...

  8. 杂项-Conda:Conda

    ylbtech-杂项-Conda:Conda 1.返回顶部 1. Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换.   外文名:Con ...

  9. plsql初次连接oracle报错解决方案

    windows7 64bit Oracle win64 11gR2(两个文件) PL/SQL v9.0 详细错误信息 Initialization error Could not initialize ...

  10. Dubbo入门到精通学习笔记(九):简易版支付系统介绍、部署(单节点)

    文章目录 部署(单节点) 一.前期准备 二.对部署环境进行规划 创建数据库 调整公共配置文件 应用部署前期准备 部署服务 部署 Web 应用 部署定时任务 一. 工程结构 第三方支付系统架构 pay- ...