Errata

Efficient Linux at the Command Line

Errata for Efficient Linux at the Command Line

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 p. 47, ch. 3: Rerunning Commands.
Table 3-2.

In the Vim column the keystroke for "Move forward by one character" should be 'l', whereas "Move backward by one character" should be 'h'.

And lastly, regarding the actions about capitalization, there are some inaccuracies. 'Meta-c', 'Meta-u' and 'Meta-d' all alter the current word, instead of the next one. 'w~', though, does act on the next word, but "switches" the case. So "Capitalize first letter of next word" is true only if the character under the cursor is lowercase.

Note from the Author or Editor:
The submitter is correct. Will be updated in next printing of the book.

Loris Brandimarte  Jan 24, 2023  Mar 31, 2023
Page Page 39 - History Expansion
4th paragraph

The sentence "For example, the expression !1203 ("bang 1023") means the "command at position 1023 in the history" contains typos (1023 should be 1203).

Similarly, the command prompt examples given also contain the same typo:
$ !1203 The command at position 1023

should be
$!1203 The command at position 1203

Note from the Author or Editor:
On page 39, change "1023" to "1203". The changes occur in three phrases:

- "bang 1023"
- "the command at position 1023 in the history"
- "The command at position 1023"

Lucas Foo  Jul 18, 2023  Dec 08, 2023
Printed, PDF, ePub, O'Reilly learning platform
Page Chapter 6, section titled Rereading a Configuration File, print page 105
Code sample, first line

The first line has a spurious backslash. It currently reads:

$ source \~/.bash_profile Uses the builtin "source" command

It should read:

$ source ~/.bash_profile Uses the builtin "source" command

Daniel J. Barrett
Daniel J. Barrett
 
Dec 02, 2023  Dec 08, 2023
Printed, PDF, ePub, Mobi, O'Reilly learning platform, Other Digital Version
Page x
Final paragraph

In the final sentence on the page, change "previous" to "other". The final sentence should read:

For a reference-style guide, try my other book, Linux Pocket Guide (O’Reilly).

Daniel J. Barrett
Daniel J. Barrett
 
Feb 04, 2024 
Printed, PDF, ePub, Mobi
Page 21
Paragraphs 2 and 4

These paragraphs contain the phrases "except for a leading dot" and "except a leading dot." They should say "except for a leading dot or a directory slash."

Daniel J. Barrett
Daniel J. Barrett
 
Nov 12, 2023  Dec 08, 2023
Printed
Page 58
Second command line

The "ls" command to list duplicate directories has a misplaced left parenthesis. It should be at the start of the command (to the left of the FIRST "ls"), not to the left of the SECOND "ls".

The full command should be:

(ls -d */ && ls -d */*/ | cut -d/ -f2-) | sort | uniq -c | sort -nr | less

Daniel J. Barrett
Daniel J. Barrett
 
Mar 06, 2023  Mar 31, 2023
Printed
Page 99
Note box, "Why cd Must Be a Shell Builtin", final words

Change the last few words:

affect the parent.

to this:

affect the original (parent) shell.

Daniel J. Barrett
Daniel J. Barrett
 
Feb 04, 2024 
Printed, PDF, ePub, Mobi
Page 101
Last line of "Children copy from their parents"

Change the last three words of the paragraph, "and other programs," to be "and the programs it launches."

Daniel J. Barrett
Daniel J. Barrett
 
Nov 12, 2023  Dec 08, 2023
Printed
Page 143
Section "Checking Matched Pairs of Files", second paragraph, first sentence

At the end of the first sentence, change this text:

a directory filled with hundreds of image files and text files.

to this:

a huge directory containing only JPEG and TXT files.

Daniel J. Barrett
Daniel J. Barrett
 
Feb 04, 2024 
Page 145
The second solution for "Checking Matched Pairs of Files"

I'm not sure whether this is a problem.
But in the second solution, if "ls -1" is used before the command substitution, I might get some unexpected results under specific circumstances.

For example, if I have directory containing the following files and try to the find unmatched pairs of files:
aaa.txt aaa.jpg bbb.txt ccc.txt ccc.jpg
In this situation, ”bbb.txt“ will certainly be the result.
But if in the directory, I also have some files that start with the 'bbb' part, for instance, "bbbb.txt" and "bbbb.jpg”, these files will also be shown in the result.

Note from the Author or Editor:
The solution is missing a dot (period) character. To fix the problem, change the text in three locations.

(1) P. 145, second paragraph of text. Change the final sentence from this:

Stick an asterisk (a wildcard) onto the end of each line of output with awk:

to this:

Stick a dot and an asterisk onto the end of each line of output with awk"

(2) P. 145, second AND third code samples. In the fourth line of each code sample (the awk command), in the "print" action, add a dot before the asterisk. The code in both samples changes from this:

print $2 "*"

to this:

print $2 ".*"

(3) P. 145, second code sample, change the command output by adding dots before each asterisk. The output changes from this:

blue_jay*
oriole*
yellow.canary*

to this:

blue_jay.*
oriole.*
yellow.canary.*

Liang Jinyong  Feb 01, 2024 
Printed
Page 195
Second and fourth code example

This section introduces a file named "Slow Inefficient Linux". However, the second and four code examples say "Slow Efficient Linux" instead. Change the word "Efficient" to "Inefficient" in both places. The new commands become:

rm Slow Inefficient Linux

rm "Slow Inefficient Linux"

Daniel J. Barrett
Daniel J. Barrett
 
Oct 24, 2023  Dec 08, 2023