Copy What You Do with script (Unix Power Tools, 3rd Edition)
37.7. Copy What You Do with script
Are
you
typing a complicated
set of commands that you need to show someone else or keep
"on file" for documentation? Are
you debugging a program that goes wrong somewhere -- but the error
message flashes by so fast that you can't see it? Do
you want to show a "prerecorded"
demonstration of an interactive program? The
script program can help with all of these
problems.
NOTE:
Versions of script on Unix systems without
ptys aren't as flexible as the
version I'm explaining here. For instance, those
versions won't let you use job
control (Section 23.3) during the script.
To copy everything you do into a file, just type:
% script
Script started, file is typescript
%
Now
you can type any Unix command that you'd use at a
shell prompt. Everything you do is copied into a file named
typescript in the current directory. (To use a
different filename, type its pathname (Section 1.16) on the
command line, like script
scriptfile.) When you're
done, type CTRL-d or exit (Section 24.4) at a shell prompt.
One thing that
surprises people is that everything will be
copied into the script file. That includes escape sequences that
programs send to your terminal. This is both good and bad.
The good part is that you can "play
back" whatever happened by catting (Section 12.2) the
script to your screen. When things get boring, you can run an
interactive program like vi inside the
script -- then quit the script and play it back with cat
typescript. The cursor will fly across the screen and your
file will be re-edited before your eyes. (This is easier to see if
the terminal is set to a slow data rate.)
The bad part is that errors you correct and other terminal-control
sequences will be in the file, too. If you edit or print the script
file, it may be full of "junk" such
as ^M (carriage return) and ^H
(backspace) characters. (A command like cat -v
or od -c (Section 12.4) will show you these characters.) If the file
has just a few of these characters, you can clean it up by hand with
your text editor's global substitution commands. You
can also automate your "script
cleaning" with techniques such as the ones in
Section 21.11 and Section 37.8.
If you're using
xterm, it may have a built-in logger. Check
its menus (Section 5.17).
-- JP
37.6. How Unix Keeps Time37.8. Cleaning script Files
Copyright © 2003 O'Reilly & Associates. All rights reserved.
Wyszukiwarka
Podobne podstrony:
ch37ch37 (3)ch37ch37ch37 (5)ch37ch37ch37CH37ch37 (2)Ch37ch37ch37ch37ch37CH37 (4)więcej podobnych podstron