Learning the Korn Shell

Errata for Learning the Korn Shell

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
Page xvi
4th paragraph under About the Second Edition

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

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

Page 123
2nd paragraph from bottom, 3rd sentence

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

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.