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 |
| 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 |
|
|