Errata

Learning the Korn Shell

Errata for Learning the Korn Shell, Second Edition

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Printed
Page xvi
4th paragraph under About the Second Edition

Remove:
"SSC sells a four-color...for more information."

Anonymous   
Printed
Page 112
11th line

I believe that the line that says

filename=${filename:?"missing."}

needs to instead read

filename=${filename:?"filename missing."}

to result in the messge printed two lines later:

highest: line 2: filename: filename missing.

AUTHOR: The correct change is to fix the error message:

highest: line 2: filename: missing.

Thanks for reporting this. FYI, ksh93m+ gets it wrong, alas:

$ cat foo.ksh
#! /home/arnold/bin/ksh93

filename=$1
filename=${filename:?"missing"}
$ foo.ksh a
$ foo.ksh
./foo.ksh: line 4: missing: missing

Bash gets it right:

$ bash foo.ksh
foo.ksh: line 4: filename: missing

Anonymous   
Printed
Page 123
2nd paragraph from bottom, 3rd sentence

"basename is less efficient thatn ${variable##/*}"
should be:
"basename is less efficient thatn ${variable##*/}"

Anonymous   
Printed
Page 150
bottom, in the script

There is:

DIRSTACK="$dirname DIRSTACK"
that doesn't replace DIRSTACK (between double quotes) by its value.

instead of:

DIRSTACK="$dirname $DIRSTACK"
that replace DIRSTACK (between double quotes) by its value.

Anonymous