]>
Commit | Line | Data |
---|---|---|
6dbe3af9 KZ |
1 | .\" Copyright (c) 1980, 1990 Regents of the University of California. |
2 | .\" 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. All advertising materials mentioning features or use of this software | |
13 | .\" must display the following acknowledgement: | |
14 | .\" This product includes software developed by the University of | |
15 | .\" California, Berkeley and its contributors. | |
16 | .\" 4. Neither the name of the University nor the names of its contributors | |
17 | .\" may be used to endorse or promote products derived from this software | |
18 | .\" without specific prior written permission. | |
19 | .\" | |
20 | .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | |
21 | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
22 | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
23 | .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | |
24 | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
25 | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
26 | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
27 | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
28 | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
29 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
30 | .\" SUCH DAMAGE. | |
31 | .\" | |
32 | .\" @(#)script.1 6.5 (Berkeley) 7/27/91 | |
33 | .\" | |
33e47106 | 34 | .Dd Feb 20, 2011 |
6dbe3af9 | 35 | .Dt SCRIPT 1 |
66ee8158 | 36 | .Os Linux |
6dbe3af9 KZ |
37 | .Sh NAME |
38 | .Nm script | |
39 | .Nd make typescript of terminal session | |
40 | .Sh SYNOPSIS | |
41 | .Nm script | |
42 | .Op Fl a | |
df1dddf9 | 43 | .Op Fl c Ar COMMAND |
f1014a4f | 44 | .Op Fl e |
66ee8158 KZ |
45 | .Op Fl f |
46 | .Op Fl q | |
7ca59ef2 | 47 | .Op Fl t[=FILE] |
33e47106 SK |
48 | .Op Fl V |
49 | .Op Fl h | |
6dbe3af9 KZ |
50 | .Op Ar file |
51 | .Sh DESCRIPTION | |
52 | .Nm Script | |
53 | makes a typescript of everything printed on your terminal. | |
54 | It is useful for students who need a hardcopy record of an interactive | |
55 | session as proof of an assignment, as the typescript file | |
56 | can be printed out later with | |
57 | .Xr lpr 1 . | |
58 | .Pp | |
59 | If the argument | |
60 | .Ar file | |
61 | is given, | |
62 | .Nm | |
63 | saves all dialogue in | |
64 | .Ar file . | |
65 | If no file name is given, the typescript is saved in the file | |
66 | .Pa typescript . | |
67 | .Pp | |
66ee8158 | 68 | Options: |
6dbe3af9 | 69 | .Bl -tag -width Ds |
33e47106 | 70 | .It Fl a, Fl Fl append |
6dbe3af9 KZ |
71 | Append the output to |
72 | .Ar file | |
73 | or | |
74 | .Pa typescript , | |
75 | retaining the prior contents. | |
33e47106 | 76 | .It Fl c, Fl Fl command Ar COMMAND |
df1dddf9 KZ |
77 | Run the COMMAND rather than an interactive shell. |
78 | This makes it easy for a script to capture the output of a program that | |
79 | behaves differently when its stdout is not a tty. | |
33e47106 | 80 | .It Fl e, Fl Fl return |
f1014a4f KZ |
81 | Return the exit code of the child process. Uses the same format as bash |
82 | termination on signal termination exit code is 128+n. | |
33e47106 | 83 | .It Fl f, Fl Fl flush |
66ee8158 KZ |
84 | Flush output after each write. This is nice for telecooperation: |
85 | One person does `mkfifo foo; script -f foo' and another can | |
86 | supervise real-time what is being done using `cat foo'. | |
fd4c1f63 SK |
87 | .It Fl Fl force |
88 | Allow default output destination, e.g. typescript file, to be | |
89 | hard or symbolic link. The command will follow symbolic link. | |
33e47106 | 90 | .It Fl q, Fl Fl quiet |
66ee8158 | 91 | Be quiet. |
7ca59ef2 | 92 | .It Fl t, Fl Fl timing[=FILE] |
48d7b13a | 93 | Output timing data to standard error. This data contains two fields, |
e8f26419 KZ |
94 | separated by a space. The first field indicates how much time elapsed since |
95 | the previous output. The second field indicates how many characters were | |
96 | output this time. This information can be used to replay typescripts with | |
97 | realistic typing and output delays. | |
7ca59ef2 SK |
98 | |
99 | The timing option is able to take file path as an argument. The | |
100 | file is used as output detination instead of standard error when | |
101 | it is supplied. | |
33e47106 SK |
102 | .It Fl V, Fl Fl version |
103 | Output version information and exit. | |
104 | .It Fl h, Fl Fl help | |
105 | Output help and exit. | |
6dbe3af9 KZ |
106 | .El |
107 | .Pp | |
108 | The script ends when the forked shell exits (a | |
109 | .Em control-D | |
110 | to exit | |
111 | the Bourne shell | |
112 | .Pf ( Xr sh 1 ) , | |
113 | and | |
114 | .Em exit , | |
115 | .Em logout | |
116 | or | |
117 | .Em control-d | |
118 | (if | |
119 | .Em ignoreeof | |
120 | is not set) for the | |
121 | C-shell, | |
122 | .Xr csh 1 ) . | |
123 | .Pp | |
124 | Certain interactive commands, such as | |
125 | .Xr vi 1 , | |
126 | create garbage in the typescript file. | |
127 | .Nm Script | |
128 | works best with commands that do not manipulate the | |
129 | screen, the results are meant to emulate a hardcopy | |
130 | terminal. | |
131 | .Sh ENVIRONMENT | |
132 | The following environment variable is utilized by | |
133 | .Nm script : | |
134 | .Bl -tag -width SHELL | |
135 | .It Ev SHELL | |
136 | If the variable | |
137 | .Ev SHELL | |
138 | exists, the shell forked by | |
139 | .Nm script | |
140 | will be that shell. If | |
141 | .Ev SHELL | |
142 | is not set, the Bourne shell | |
143 | is assumed. (Most shells set this variable automatically). | |
144 | .El | |
145 | .Sh SEE ALSO | |
146 | .Xr csh 1 | |
147 | (for the | |
148 | .Em history | |
ffc43748 | 149 | mechanism), |
c129767e | 150 | .Xr scriptreplay 1 . |
6dbe3af9 KZ |
151 | .Sh HISTORY |
152 | The | |
153 | .Nm script | |
154 | command appeared in | |
155 | .Bx 3.0 . | |
156 | .Sh BUGS | |
157 | .Nm Script | |
158 | places | |
159 | .Sy everything | |
160 | in the log file, including linefeeds and backspaces. | |
161 | This is not what the naive user expects. | |
86d62711 | 162 | .Sh AVAILABILITY |
601d12fb KZ |
163 | The script command is part of the util-linux package and is available from |
164 | ftp://ftp.kernel.org/pub/linux/utils/util-linux/. |