TOUCH(1) TOUCH(1)
NAME
touch - change file timestamps
SYNOPSIS
touch[-acm][-r ref_file|-t time][--] file...
Obsolescent version:
touch[-acm][ugly_time] file...
GNU version:
touch[-acfm][-r file][-t decimtime][-d time]
[--time={atime,access,use,mtime,modify}][--date=time][--refer-
ence=file][--no-create][--help][--version][--] file...
DESCRIPTION
touch changes the access and/or modification timestamps of each speci-
fied file. These timestamps are changed to the current time, unless
the -r option is specified, in which case they are changed to the cor-
responding timestamps of the file ref_file, or the -t option is speci-
fied, in which case they are changed to the specified time. Both times
are changed when neither or both of the -a and -m options are given.
Only the access or only the modification time is changed when one of
the options -a and -m is given. If the file did not exist yet, it is
created (as an empty file with mode 0666, modified by the umask),
unless the -c option is given.
POSIXOPTIONS
-a Change the access time of file.
-c Do not create file.
-m Change the modification time of file.
-r ref_file
Use the corresponding timestamp of ref_file as the new value for
the changed timestamp(s).
-t time
Use the specified time as the new value for the changed times-
tamp(s). The argument is a decimal number of the form
[[CC]YY]MMDDhhmm[.SS]
with the obvious meaning. If CC is not specified, the year CCYY
is taken to be in the range 1969-2068. If SS is not specified,
it is taken to be 0. It may be specified in the range 0-61 so
that it is possible to refer to leap seconds. The resulting
time is taken as a time for the time zone specified by the envi-
ronment variable TZ. It is an error if the resulting time pre-
cedes 1 January 1970.
-- Terminate option list.
POSIXDETAILS
The second form of invocation has the disadvantage that there is some
ambiguity as to whether ugly_time is a time or a file argument. It is
taken to be a time when no -r or -t option is present, there are at
least two arguments, and the first argument is an eight- or ten-digit
decimal integer. The format of ugly_time is MMDDhhmm[yy], where an yy
in the range 69-99 denotes a year in the range 1969-1999, and an
unspecified yy denotes the current year. This form is obsolete.
GNUDETAILS
If the first file would be a valid argument to the -t option and no
timestamp is given with any of the -d, -r or -t options and the '--'
argument is not given, that argument is interpreted as the time for the
other files instead of as a file name.
If changing both the access and modification times to the current time,
touch can change the timestamps for files that the user running it does
not own but has write permission for. Otherwise, the user must own the
files.
GNUOPTIONS
-a,--time=atime,--time=access,--time=use
Change the access time only.
-c,--no-create
Do not create files that do not exist.
-d,--date=time
Use time instead of the current time. It can contain month
names, time zones, 'am' and 'pm', etc.
-f Ignored; for compatibility with BSD versions of touch(1).
-m,--time=mtime,--time=modify
Change the modification time only.
-r file,--reference=file
Use the times of the reference file instead of the current time.
-t decimtime
Here decimtime has the format MMDDhhmm[[CC]YY][.ss] Use the
argument (months, days, hours, minutes, optional century and
years, optional seconds) instead of the current time. Note that
this format violates the POSIX specification.
GNUSTANDARDOPTIONS
--help Print a usage message on standard output and exit successfully.
--version
Print version information on standard output, then exit success-
fully.
-- Terminate option list.
ENVIRONMENT
The variable TZ is used to interpret explicitly given times. The vari-
ables LANG, LC_ALL, LC_CTYPE and LC_MESSAGES have the usual meaning.
CONFORMINGTO
POSIX 1003.2 describes a syntax for the argument of the -t option that
differs from that used by the GNU implementation.
EXAMPLEOFUSE
The command 'touch foo' will create the file foo if it didn't exist,
and change the time of last modification to now. It is often used to
guide the actions of make.
NOTES
This page describes touch as found in the fileutils-4.0 package; other
versions may differ slightly. Mail corrections and additions to
aeb
cwi.nl. Report bugs in the program to fileutils-
bugs
gnu.edu.
GNU fileutils 4.0 1998-11 TOUCH(1)