finish all in man1
[manpages-zh.git] / src / man1 / touch.1
blob58f3478719aee3a883a08e7960ba3512e63ac22e
1 .\"版权所有:Andries Brouwer, Ragnar Hojland Espinosa and A. Wik, 1998.
2 .\"中文版版权所有 晓寒, www.linuxforum.net
3 .\"本文件可在LDP通用公共许可证(LDP GENERAL PUBLIC LICENSE)
4 .\"(Version 1, September 1998)所描述的条件下自由拷贝.
5 .\"此许可证应与本文件一起发布.
6 .\"
7 .TH TOUCH 1 "November 1998" "GNU fileutils 4.0"
8 .SH NAME
9 touch \- 修改文件的时间戳记.
10 .SH 总览
11 .B touch
12 .BI "[\-acm][\-r " ref_file(参照文件) "|\-t " time(时间值) "] " file(文件名)...
13 .sp
14 被废弃的版本:
15 .br
16 .B touch
17 .BI "[\-acm][" ugly_time "] " file(文件)...
18 .sp
19 GNU版本:
20 .br
21 .B touch
22 .BI "[\-acfm] [\-r " file(参照文件) "] [\-t " decimtime(时间值) ]
23 .BI "[\-d " time(时间值) "] [\-\-time={atime,access,use,mtime,modify}]"
24 .BI "[\-\-date=" time "] [\-\-reference=" file ]
25 .BI "[\-\-no\-create] [\-\-help] [\-\-version] [\-\-] " file(文件)...
26 .SH 用法描述
27 .B touch
28 修改每个指定文件
29 .IR file
30 的存取(access)和/或修改(modification)时间戳记.
31 除非使用\-r或\-t选项,这些时间戳记都将修改为当前的时间.
32 使用\-r选项时,这些戳记将按照文件
33 .IR ref_file
34 的时间戳记来修改(即变得和ref_file时间戳记值相同).
35 使用\-t选项,则这些戳记将按照给定的时间值
36 .IR time
37 进行修改.同时使用或
38 同时不使用选项\-a和\-m,存取和修改两个戳记都将被更改.若只使
39 用选项\-a,则只修改存取戳记.同样,只使用选项\-m,则只修改修
40 改戳记.若要修改戳记的文件尚不存在,除非使用\-c选项,touch
41 将创建它(作为空文件,并赋予0666的模式且受umask值的限制).
42 .SH "POSIX标准定义的选项"
43 .TP
44 .B \-a
45 修改文件
46 .IR file
47 的存取时间.
48 .TP
49 .B \-c
50 不创建文件
51 .IR file .
52 .TP
53 .B \-m
54 修改文件
55 .IR file
56 .IR file
58 .TP
59 .BI "\-r " ref_file
60 将参照文件
61 .I ref_file
62 相应的时间戳记的数值作为指定文件
63 .IR file
64 时间戳记的新值.
65 .TP
66 .BI "\-t " time
67 使用指定的时间值
68 .IR time
69 作为指定文件
70 .IR file
71 相应时间戳记的新值.此处的
72 .IR time
73 规定为如下形式的十进制数:
74 .br
75 .nf
76 [[CC]YY]MMDDhhmm[.SS]
77 .br
78 .fi
79 这里,CC为年数中的前两位,即\(lq世纪数\(rq;YY为年数的
80 后两位,即某世纪中的年数.如果不给出CC的值,则touch
81 将把年数CCYY限定在1969--2068之内.MM为月数,DD为天
82 将把年数CCYY限定在1969--2068之内.MM为月数,DD为天
83 数,hh为小时数(几点),mm为分钟数,SS为秒数.此处秒
84 的设定范围是0--61,这样可以处理闰秒.这些数字组成
85 的时间是环境变量TZ指定的时区中的一个时间.由于系统
86 的限制,早于1970年1月1日的时间是错误的.
87 .SH "POSIX标准的细节"
88 已被废弃的touch版本使用时会出现模棱两可的情况:
89 .IR ugly_time
90 到底是时间值还是文件名?由于此种版本尚未提供\-r或\-t选项,
91 所以使用时至少要有两个命令行参数,作为时间值,
92 .IR ugly_time
93 必须为第一个参数.这里的
94 .IR ugly_time
95 是一个形为MMDDhhmm[yy]的八
96 位或十位整数.其中,yy是介于69--99之间表示1969--1999之间某
97 一年的两位数,如果不给,表示当前这一年.
98 .SH "GNU版本的细节"
99 如果第一个指定文件
100 .I file
101 的名子从形式上说是选项
102 .B "\-t"
103 的有效参
104 数,并且没有给出选项
105 .BR "\-d" ,
106 .BR "\-r"
108 .B "\-t"
109 .B "\-t"
111 数,也没有给`\-\-'选项,那么这个文件名将被解释成时间值.
113 一般情况下,利用
114 .B touch
115 修改文件的时间戳记时要求用户时该文
116 件的所有者.除非只是把文件的存取和修改两种时间戳记修改为当
117 前的时刻,这种情况只要求用户拥有对该文件`写'的权利就行了.
118 .SH "GNU版本选项用法简介"
120 .B "\-a, \-\-time=atime, \-\-time=access, \-\-time=use"
121 只修改存取时间.
123 .B "\-c, \-\-no\-create"
124 如果要修改的文件不存在,此选项使touch不去创建它.
126 .BI "\-d, \-\-date=" time
127 使用时间值
128 .I time
129 代替指定文件的戳记值.可以包含月份
130 名,时区名以及`am'和
131 `pm'等等.
133 .B "\-f"
134 此选项用于兼容BSD版本的
135 .BR touch (1).
138 .B "\-m, \-\-time=mtime, \-\-time=modify"
139 只修改修改时间.
141 .BI "\-r " file ", \-\-reference=" file
142 使用参照文件
143 .I file
144 的时间戳记值修改指定文件的时间戳
145 记.
147 .BI "\-t " decimtime
148 这里时间值
149 .I decimtime
150 的格式为MMDDhhmm[[CC]YY][.ss]
151 从左至右分别是月份,日期,小时,分钟,可选的世纪和
152 年,以及可选的秒.
153 .B touch
154 将用这组数值修改指定文件的
155 时间戳记.请注意,这个格式与POSIX标准所规定的格式并
156 不一样.
157 .SH "GNU版本通用选项"
159 .B "\-\-help"
160 使程序在标准输出上显示该程序的用法信息.
162 .B "\-\-version"
163 使程序在标准输出上打印其版本信息.
165 .SH "GNU版本通用选项"
167 .B "\-\-help"
168 使程序在标准输出上显示该程序的用法信息.
170 .B "\-\-version"
171 使程序在标准输出上打印其版本信息.
173 .B "\-\-"
174 用于使程序终止对选项的解析.
175 .SH 运行环境
176 环境变量TZ一般用来表明所给时刻是哪个时区的.而环境变量LANG,
177 LC_ALL, LC_CTYPE 和 LC_MESSAGES还是一般情况下的意义.
178 .SH "遵循"
179 GNU版touch的\-t选项的参数所用格式并不符合POSIX标准1003.2的描述.
180 .SH "用法实例"
181 如果文件\fIfoo\fP并不存在,那么命令`\fItouch foo\fP'将创建它,并把最
182 后的修改时间改到现在的时刻.这一特点经常用来引导
183 .BR make
184 的执行.
185 .SH 注意
186 这篇说明描述了fileutils-4.0程序包中的
187 .B touch.
188 其它版本的touch可能与此有稍许不同.
189 对本文的修正和增补请致信aeb@cwi.nl.
190 程序缺陷请向fileutils-bugs@gnu.ai.mit.edu报告