Have script accept and ignore -e for Linux compat

In the util-linux version of script, it will always exit with succes.
Except when run with -e, in which case it will have the exit value of
the child. BSD Script already uses the child's exit value for its exit
value. Some config and other helper scripts depend on being able to
specify -e. Accept it for compatibility since we'll already to the
right thing, but otherwise we ignore it.
This commit is contained in:
Warner Losh 2020-09-01 16:11:23 +00:00
parent 2e47aedf86
commit f9177b6c91
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=365052
2 changed files with 10 additions and 2 deletions

View File

@ -36,7 +36,7 @@
.Nd make typescript of terminal session
.Sh SYNOPSIS
.Nm
.Op Fl adfkpqr
.Op Fl adefkpqr
.Op Fl F Ar pipe
.Op Fl t Ar time
.Op Ar file Op Ar command ...
@ -77,6 +77,12 @@ retaining the prior contents.
When playing back a session with the
.Fl p
flag, do not sleep between records when playing back a timestamped session.
.It Fl e
Accepted for compatibility with
.Em util-linux
.Nm .
The child command exit status is always the exit status of
.Nm .
.It Fl F Ar pipe
Immediately flush output after each write.
This will allow a user to create a named pipe using

View File

@ -111,7 +111,7 @@ main(int argc, char *argv[])
warning. (not needed w/clang) */
showexit = 0;
while ((ch = getopt(argc, argv, "adFfkpqrt:")) != -1)
while ((ch = getopt(argc, argv, "adeFfkpqrt:")) != -1)
switch(ch) {
case 'a':
aflg = 1;
@ -119,6 +119,8 @@ main(int argc, char *argv[])
case 'd':
usesleep = 0;
break;
case 'e': /* Default behaior, accepted for linux compat */
break;
case 'F':
Fflg = 1;
break;