19b50d902SRodney W. Grimes.\" Copyright (c) 1980, 1990, 1993 29b50d902SRodney W. Grimes.\" The Regents of the University of California. All rights reserved. 39b50d902SRodney W. Grimes.\" 49b50d902SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without 59b50d902SRodney W. Grimes.\" modification, are permitted provided that the following conditions 69b50d902SRodney W. Grimes.\" are met: 79b50d902SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright 89b50d902SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer. 99b50d902SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright 109b50d902SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer in the 119b50d902SRodney W. Grimes.\" documentation and/or other materials provided with the distribution. 129b50d902SRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software 139b50d902SRodney W. Grimes.\" must display the following acknowledgement: 149b50d902SRodney W. Grimes.\" This product includes software developed by the University of 159b50d902SRodney W. Grimes.\" California, Berkeley and its contributors. 169b50d902SRodney W. Grimes.\" 4. Neither the name of the University nor the names of its contributors 179b50d902SRodney W. Grimes.\" may be used to endorse or promote products derived from this software 189b50d902SRodney W. Grimes.\" without specific prior written permission. 199b50d902SRodney W. Grimes.\" 209b50d902SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 219b50d902SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 229b50d902SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 239b50d902SRodney W. Grimes.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 249b50d902SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 259b50d902SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 269b50d902SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 279b50d902SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 289b50d902SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 299b50d902SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 309b50d902SRodney W. Grimes.\" SUCH DAMAGE. 319b50d902SRodney W. Grimes.\" 329b50d902SRodney W. Grimes.\" @(#)script.1 8.1 (Berkeley) 6/6/93 3332c21313SSteve Price.\" $Id: script.1,v 1.4 1998/03/08 14:19:15 peter Exp $ 349b50d902SRodney W. Grimes.\" 359b50d902SRodney W. Grimes.Dd June 6, 1993 369b50d902SRodney W. Grimes.Dt SCRIPT 1 379b50d902SRodney W. Grimes.Os BSD 4 389b50d902SRodney W. Grimes.Sh NAME 399b50d902SRodney W. Grimes.Nm script 409b50d902SRodney W. Grimes.Nd make typescript of terminal session 419b50d902SRodney W. Grimes.Sh SYNOPSIS 42236d2f55SPhilippe Charnier.Nm 439b50d902SRodney W. Grimes.Op Fl a 44e8eb82a8SPeter Wemm.Op Fl k 4551afb8dfSPeter Wemm.Op Fl q 46e8eb82a8SPeter Wemm.Op Fl t Ar time 479b50d902SRodney W. Grimes.Op Ar file 4851afb8dfSPeter Wemm.Op Ar command ... 499b50d902SRodney W. Grimes.Sh DESCRIPTION 509b50d902SRodney W. Grimes.Nm Script 519b50d902SRodney W. Grimesmakes a typescript of everything printed on your terminal. 529b50d902SRodney W. GrimesIt is useful for students who need a hardcopy record of an interactive 539b50d902SRodney W. Grimessession as proof of an assignment, as the typescript file 549b50d902SRodney W. Grimescan be printed out later with 559b50d902SRodney W. Grimes.Xr lpr 1 . 569b50d902SRodney W. Grimes.Pp 579b50d902SRodney W. GrimesIf the argument 589b50d902SRodney W. Grimes.Ar file 599b50d902SRodney W. Grimesis given, 609b50d902SRodney W. Grimes.Nm 619b50d902SRodney W. Grimessaves all dialogue in 629b50d902SRodney W. Grimes.Ar file . 639b50d902SRodney W. GrimesIf no file name is given, the typescript is saved in the file 649b50d902SRodney W. Grimes.Pa typescript . 659b50d902SRodney W. Grimes.Pp 6651afb8dfSPeter WemmIf the argument 6751afb8dfSPeter Wemm.Ar command ... 6851afb8dfSPeter Wemmis given, 6951afb8dfSPeter Wemm.Nm 7051afb8dfSPeter Wemmwill run the specified command with an optional argument vector 7151afb8dfSPeter Wemminstead of an interactive shell. 7251afb8dfSPeter Wemm.Pp 73e8eb82a8SPeter WemmOptions: 74e8eb82a8SPeter Wemm.Bl -tag -width xxxxxxx 759b50d902SRodney W. Grimes.It Fl a 769b50d902SRodney W. GrimesAppend the output to 779b50d902SRodney W. Grimes.Ar file 789b50d902SRodney W. Grimesor 799b50d902SRodney W. Grimes.Pa typescript , 809b50d902SRodney W. Grimesretaining the prior contents. 81e8eb82a8SPeter Wemm.It Fl k 82e8eb82a8SPeter WemmLog keys sent to program as well as output. 8351afb8dfSPeter Wemm.It Fl q 8451afb8dfSPeter WemmRun in quiet mode, omit the start and stop status messages. 85e8eb82a8SPeter Wemm.It Fl t Ar time 86e8eb82a8SPeter WemmSpecify time interval between flushing script output file. A value of 0 87e8eb82a8SPeter Wemmcauses 88e8eb82a8SPeter Wemm.Nm 89e8eb82a8SPeter Wemmto flush for every character I/O event. 909b50d902SRodney W. Grimes.El 919b50d902SRodney W. Grimes.Pp 9251afb8dfSPeter WemmThe script ends when the forked shell (or command) exits (a 939b50d902SRodney W. Grimes.Em control-D 949b50d902SRodney W. Grimesto exit 959b50d902SRodney W. Grimesthe Bourne shell 969b50d902SRodney W. Grimes.Pf ( Xr sh 1 ) , 979b50d902SRodney W. Grimesand 989b50d902SRodney W. Grimes.Em exit , 999b50d902SRodney W. Grimes.Em logout 1009b50d902SRodney W. Grimesor 1019b50d902SRodney W. Grimes.Em control-d 1029b50d902SRodney W. Grimes(if 1039b50d902SRodney W. Grimes.Em ignoreeof 1049b50d902SRodney W. Grimesis not set) for the 1059b50d902SRodney W. GrimesC-shell, 1069b50d902SRodney W. Grimes.Xr csh 1 ) . 1079b50d902SRodney W. Grimes.Pp 1089b50d902SRodney W. GrimesCertain interactive commands, such as 1099b50d902SRodney W. Grimes.Xr vi 1 , 1109b50d902SRodney W. Grimescreate garbage in the typescript file. 1119b50d902SRodney W. Grimes.Nm Script 1129b50d902SRodney W. Grimesworks best with commands that do not manipulate the 1139b50d902SRodney W. Grimesscreen, the results are meant to emulate a hardcopy 1149b50d902SRodney W. Grimesterminal. 1159b50d902SRodney W. Grimes.Sh ENVIRONMENT 1169b50d902SRodney W. GrimesThe following environment variable is utilized by 1179b50d902SRodney W. Grimes.Nm script : 1189b50d902SRodney W. Grimes.Bl -tag -width SHELL 1199b50d902SRodney W. Grimes.It Ev SHELL 1209b50d902SRodney W. GrimesIf the variable 1219b50d902SRodney W. Grimes.Ev SHELL 1229b50d902SRodney W. Grimesexists, the shell forked by 123236d2f55SPhilippe Charnier.Nm 1249b50d902SRodney W. Grimeswill be that shell. If 1259b50d902SRodney W. Grimes.Ev SHELL 1269b50d902SRodney W. Grimesis not set, the Bourne shell 1279b50d902SRodney W. Grimesis assumed. (Most shells set this variable automatically). 1289b50d902SRodney W. Grimes.El 1299b50d902SRodney W. Grimes.Sh SEE ALSO 1309b50d902SRodney W. Grimes.Xr csh 1 1319b50d902SRodney W. Grimes(for the 1329b50d902SRodney W. Grimes.Em history 1339b50d902SRodney W. Grimesmechanism). 1349b50d902SRodney W. Grimes.Sh HISTORY 1359b50d902SRodney W. GrimesThe 136236d2f55SPhilippe Charnier.Nm 1379b50d902SRodney W. Grimescommand appeared in 1389b50d902SRodney W. Grimes.Bx 3.0 . 1399b50d902SRodney W. Grimes.Sh BUGS 1409b50d902SRodney W. Grimes.Nm Script 1419b50d902SRodney W. Grimesplaces 1429b50d902SRodney W. Grimes.Sy everything 1439b50d902SRodney W. Grimesin the log file, including linefeeds and backspaces. 1449b50d902SRodney W. GrimesThis is not what the naive user expects. 14551afb8dfSPeter Wemm.Pp 14651afb8dfSPeter WemmIt is not possible to specify a command without also naming the script file 14732c21313SSteve Pricebecause of argument parsing compatibility issues. 148e8eb82a8SPeter Wemm.Pp 149e8eb82a8SPeter WemmWhen running in 150e8eb82a8SPeter Wemm.Fl k 151e8eb82a8SPeter Wemmmode, echo cancelling far from ideal. The slave terminal mode is checked 152e8eb82a8SPeter Wemmfor ECHO mode to check when to avoid manual echo logging. This does not 153e8eb82a8SPeter Wemmwork when in a raw mode where the program being run is doing manual echo. 154