User Commands touch(1)
NAME
touch, settime - change file access and modification times
SYNOPSIS
touch [-acm] [-r reffile -t time] file...
touch [-acm] [datetime] file...
settime [-f reffile] [datetime] file...
DESCRIPTION
The touch utility sets the access and modification times of
each file. The file operand is created if it does not
already exist.
The time used can be specified by -t time, by the
corresponding time fields of the file referenced by -r
reffile, or by the datetime operand. If none of these are
specified, touch uses the current time (the value returned
by the time(2) function).
If neither the -a nor -m options are specified, touch
updates both the modification and access times.
A user with write access to a file, but who is not the owner
of the file or a super-user, can change the modification and
access times of that file only to the current time. Attempts
to set a specific time with touch will result in an error.
The settime utility is equivalent to touch -c [datetime]
file.
OPTIONS
The following options are supported in the touch and settime
utilities:
touch
The following options are supported for the touch utility:
-a
Changes the access time of file. Does not change the
modification time unless -m is also specified.
SunOS 5.11 Last change: 9 Sep 2008 1
User Commands touch(1)
-c
Does not create a specified file if it does not exist.
Does not write any diagnostic messages concerning this
condition.
-m
Changes the modification time of file. Does not change
the access time unless -a is also specified.
-r reffile
Uses the corresponding times of the file named by
reffile instead of the current time.
-t time
Uses the specified time instead of the current time.
time will be a decimal number of the form:
[C]Y]MDhhmm[.S]
where each two digits represent the following:
M
The month of the year [01-12].
D
The day of the month [01-31].
hh
The hour of the day [00-23].
mm
The minute of the hour [00-59].
C
The first two digits of the year.
SunOS 5.11 Last change: 9 Sep 2008 2
User Commands touch(1)
Y
The second two digits of the year.
S
The second of the minute [00-61].
Both C and Y are optional. If neither is given, the
current year will be assumed. If Y is specified, but C
is not, C will be derived as follows:
If Y is: C becomes:
69-99 19
00-38 20
39-68 EROR
The resulting time will be affected by the value of the
TZ environment variable. If the resulting time value
precedes the Epoch, touch will exit immediately with an
error status. The range of valid times is the Epoch to
January 18, 2038.
The range for S is [00-61] rather than [00-59] because
of leap seconds. If S is 60 or 61, and the resulting
time, as affected by the TZ environment variable, does
not refer to a leap second, the resulting time will be
one or two seconds after a time where S is 59. If S is
not given, it is assumed to be 0.
settime
The following option is supported for the settime utility:
-f reffile
Uses the corresponding times of the file named by
reffile instead of the current time.
OPERANDS
The following operands are supported for the touch and set-
time utilities:
file
SunOS 5.11 Last change: 9 Sep 2008 3
User Commands touch(1)
A path name of a file whose times are to be modified.
datetime
Uses the specified datetime instead of the current
time. This operand is a decimal number of the form:
MDhhmm[Y]
where each two digits represent the following:
M
The month of the year [01-12].
D
The day of the month [01-31].
hh
The hour of the day [00-23].
mm
The minute of the hour [00-59].
Y
The second two digits of the year.
Y is optional. If it is omitted, the current year
will be assumed. If Y is specified, the year will
be derived as follows:
SunOS 5.11 Last change: 9 Sep 2008 4
User Commands touch(1)
Y Corresponding Year
69-99 1969-1999
00-38 2000-2038
39-68 EROR
If no -r option is specified, no -t option is specified,
at least two operands are specified, and the first
operand is an eight- or ten-digit decimal integer, the
first operand will be assumed to be a datetime operand.
Otherwise, the first operand will be assumed to be a
file operand.
USAGE
See largefile(5) for the description of the behavior of
touch when encountering files greater than or equal to 2
Gbyte ( 2^31 bytes).
When existing file access and modification times cannot be
determined (which will occur if a call to stat(2) fails),
both times can be changed to known values by settime and
utime(2). However, in this case, touch -a (without -m) and
touch -m (without -a) will fail because the unchanged time
cannot be preserved.
ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment
variables that affect the execution of touch: LANG, LCAL,
LANG, LCAL, LCTYPE, LCMESAGES, and NLSPATH.
TZ
Determine the timezone to be used for interpreting the
time option-argument or the datetime operand.
EXIT STATUS
The following exit values are returned:
0
The touch utility executed successfully and all
requested changes were made.
>0
An error occurred. The touch utility returned the
number of files for which the times could not be
SunOS 5.11 Last change: 9 Sep 2008 5
User Commands touch(1)
successfully modified.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Availability SUNWcsu
CSI Enabled
Interface Stability Committed
Standard See standards(5).
SEE ALSO
stat(2), time(2), utime(2), attributes(5), environ(5), lar-
gefile(5), standards(5)
NOTES
Users familiar with the BSD environment will find that for
the touch utility, the -f option is accepted but ignored.
The -f option is unnecessary because touch will succeed for
all files owned by the user regardless of the permissions on
the files.
SunOS 5.11 Last change: 9 Sep 2008 6
|