]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/time/time.1
bluetooth: Fix a mandoc related issues
[FreeBSD/FreeBSD.git] / usr.bin / time / time.1
1 .\" Copyright (c) 1980, 1991, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)time.1      8.1 (Berkeley) 6/6/93
29 .\" $FreeBSD$
30 .\"
31 .Dd July 7, 2020
32 .Dt TIME 1
33 .Os
34 .Sh NAME
35 .Nm time
36 .Nd time command execution
37 .Sh SYNOPSIS
38 .Nm
39 .Op Fl al
40 .Op Fl h | Fl p
41 .Op Fl o Ar file
42 .Ar utility Op Ar argument ...
43 .Sh DESCRIPTION
44 The
45 .Nm
46 utility
47 executes and
48 times the specified
49 .Ar utility .
50 After the
51 .Ar utility
52 finishes,
53 .Nm
54 writes to the standard error stream,
55 (in seconds):
56 the total time elapsed,
57 the time used to execute the
58 .Ar utility
59 process and the time consumed by system overhead.
60 .Pp
61 The following options are available:
62 .Bl -tag -width indent
63 .It Fl a
64 If the
65 .Fl o
66 flag is used, append to the specified file rather than overwriting
67 it.
68 Otherwise, this option has no effect.
69 .It Fl h
70 Print times in a human friendly format.
71 Times are printed in minutes, hours,
72 etc.\& as appropriate.
73 .It Fl l
74 The contents of the
75 .Em rusage
76 structure are printed as well.
77 .It Fl o Ar file
78 Write the output to
79 .Ar file
80 instead of stderr.
81 If
82 .Ar file
83 exists and the
84 .Fl a
85 flag is not specified, the file will be overwritten.
86 .It Fl p
87 Makes
88 .Nm
89 output POSIX.2 compliant (each time is printed on its own line).
90 .El
91 .Pp
92 Some shells may provide a builtin
93 .Nm
94 command which is similar or identical to this utility.
95 Consult the
96 .Xr builtin 1
97 manual page.
98 .Pp
99 If
100 .Nm
101 receives a
102 .Dv SIGINFO
103 (see the status argument for
104 .Xr stty 1 )
105 signal, the current time the given command is running will be written to the
106 standard output.
107 .Sh ENVIRONMENT
108 The
109 .Ev PATH
110 environment variable is used to locate the requested
111 .Ar utility
112 if the name contains no
113 .Ql /
114 characters.
115 .Sh EXIT STATUS
116 If
117 .Ar utility
118 could be timed successfully, its exit status is returned.
119 If
120 .Ar utility
121 terminated abnormally, a warning message is output to stderr.
122 If the
123 .Ar utility
124 was found but could not be run, the exit status is 126.
125 If no
126 .Ar utility
127 could be found at all, the exit status is 127.
128 If
129 .Nm
130 encounters any other error, the exit status is between 1 and 125
131 included.
132 .Sh EXAMPLES
133 Time the execution of
134 .Xr ls 1
135 on an empty directory:
136 .Bd -literal -offset indent
137 $ /usr/bin/time ls
138         0.00 real         0.00 user         0.00 sys
139 .Ed
140 .Pp
141 Time the execution of the
142 .Xr cp 1
143 command and store the result in the
144 .Pa times.txt
145 file.
146 Then execute the command again to make a new copy and add the result to the same
147 file:
148 .Bd -literal -offset indent
149 $ /usr/bin/time -o times.txt cp FreeBSD-12.1-RELEASE-amd64-bootonly.iso copy1.iso
150 $ /usr/bin/time -a -o times.txt cp FreeBSD-12.1-RELEASE-amd64-bootonly.iso copy2.iso
151 .Ed
152 .Pp
153 The
154 .Pa times.txt
155 file will contain the times of both commands:
156 .Bd -literal -offset indent
157 $ cat times.txt
158         0.68 real         0.00 user         0.22 sys
159         0.67 real         0.00 user         0.21 sys
160 .Ed
161 .Pp
162 Time the
163 .Xr sleep 1
164 command and show the results in a human friendly format.
165 Show the contents of the
166 .Em rusage
167 structure too:
168 .Bd -literal -offset indent
169 $ /usr/bin/time -l -h -p sleep 5
170 real 5.01
171 user 0.00
172 sys 0.00
173          0  maximum resident set size
174          0  average shared memory size
175          0  average unshared data size
176          0  average unshared stack size
177         80  page reclaims
178          0  page faults
179          0  swaps
180          1  block input operations
181          0  block output operations
182          0  messages sent
183          0  messages received
184          0  signals received
185          3  voluntary context switches
186          0  involuntary context switches
187 .Ed
188 .Sh SEE ALSO
189 .Xr builtin 1 ,
190 .Xr csh 1 ,
191 .Xr getrusage 2 ,
192 .Xr wait 2
193 .Sh STANDARDS
194 The
195 .Nm
196 utility is expected to conform to ISO/IEC 9945-2:1993 (``POSIX'').
197 .Sh HISTORY
198 A
199 .Nm
200 utility appeared in
201 .At v3 .