TOUCH
Section: User Commands (1)
Updated: November 1998
Index
NAME
touch - 修改文件的时间戳记.
总览
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
的执行.
注意
这篇说明描述了fileutils-4.0程序包中的
touch.
其它版本的touch可能与此有稍许不同.
对本文的修正和增补请致信aeb@cwi.nl.
程序缺陷请向fileutils-bugs@gnu.ai.mit.edu报告
Index
- NAME
-
- 总览
-
- 用法描述
-
- POSIX标准定义的选项
-
- POSIX标准的细节
-
- GNU版本的细节
-
- GNU版本选项用法简介
-
- GNU版本通用选项
-
- GNU版本通用选项
-
- 运行环境
-
- 遵循
-
- 用法实例
-
- 注意
-
This document was created by
man2html,
using the manual pages.
Time: GMT, January 14, 2004