Errata

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.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

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

Version Location Description Submitted by Date submitted
Printed Page Appendix B
It would be really useful to give page references for

each entry in the tables. Some have chapter references, but the book does
not print the chapter numbers in the page headers or footers.
Alternatively, every line item in appendix B should be added to the index.

The difficulty in finding the detail of a variable or command is
my only complaint.

Anonymous   
Printed Page 8
At the bottom of Figure 1-2

it points to a file and says "/users/billr/bob/statrpt", but on
the next page, in the text where it talks about the file, it
uses the name "bob/statreport" The two names of the same
file don't correspond.

Anonymous   
Printed Page 115
3 lines below the bottom of Table 4-6

DIRSTACK=""

would better be

DIRSTACK=$PWD

otherwise popd will not take you back all the way the
starting directory at the bottom of the stack....

Anonymous   
Printed Page 116
2

Your definitions of pushd and popd do not match the definitions of those
same functions in csh or tcsh. Your definitions of 'pushd' and 'popd' are
not nearly as useful as those in the other shells.

The essential function of pushd is to push the CURRENT directory onto the
stack. Your pushd does not do this (execpt for the first call). Instead
your pushd pushes the directory that you are going to onto the stack.

I suggest you experiment with the tcsh pushd function some more. You will
quickly notice the differences.

If you would like, I can supply you with more appropiate pushd/popd ksh
functions.

Also, just to clarifly, I am referring to your latest, 'corrected'
definitions of those functions.

Anonymous   
Printed Page 138

The book reads:

"The complete script consists of the for loop code and the above function,
in either order; good programming style dictates that the function
definition should go first."

I say that unless the function definition goes first, the script does not
work. I have learned that this is a fact when the programming language is a
script language and not a compiled language, and I also found when trying
that when the function definition went last, the script indeed failed to run
because the function was not found...

Anonymous   
Printed Page 172
line 18 of printed text

In function popd the assignment line

let num={$1#+}

should read

let num=${1#+}

Anonymous   
Printed Page 207
End of first bulleted paragraph

This paragraph ends with the symbol that is used when there is a second
footnote on the page (kind of a small cross). The first footnote on a page
is signalled by an asterisk and the second footnote on a page is signaled by
this character.

However, at the bottom of the page, there is no second footnote to
reference--only the first footnote.

Anonymous   
Printed Page 224
2/3 of the way down, the line that starts

Similarly, %i- ...

should read:

Similarly, %- ...

Anonymous   
Printed Page 224
4th paragraph

"The -p option tells jobs to list only process IDS..."

technically, it tells jobs to list process groups, doesn't it?
perhaps the effect here is the same, but it might be worth
pointing out what the -p really stands for.

Anonymous   
Printed Page 235
first line of code near top

On p. 25, the author correctly points out that you can't use a
backslash to embed a single quote in a single-quoted string. However,
he then goes on to do this numerous times starting on p. 235 in
defining traps. At least, that's what it looks like.

Anonymous   
Printed Page 309
Table of Built-in Shell Variables

*, @, FPATH are omitted. They are described on pages 90-92.

Anonymous   
Printed Page 311
Table of Test Operators, -h is omitted. It should be defined the

same as -L (file is a symbolic link).

Anonymous   
Printed Page 312
Table of Typeset Options, -Z is omitted. It is described on page

178.

Anonymous