UNIX Power Tools

作者:Jerry Peek、Tim O'Reilly 和 Mike Loukides
出版社:O'Reilly & Associates
电子邮件:info@oreilly.com
网址:http://www.oreilly.com/
价格:59.95 美元
ISBN:1-56592-260-3
评论者:Samuel Ockman
第二版 UNIX Power Tools 无论从哪个角度衡量都是一本令人印象深刻的书籍。它厚达 1073 页,涵盖了 shell、编辑器以及 AWK、sed 和 RCS 等工具。主要作者是 Jerry Peek、Tim O'Reilly 和 Mike Loukides,但本书由数百篇不同人士撰写的文章组成,其中包括 UNIX 领域的杰出人物 Tom Christiansen 和 Simson Garfinkel。
UNIX Power Tools 提供了许多关于如何节省打字时间的提示,它教会您如何更好地交互式地使用 shell,如何利用您的编辑器以及如何编写脚本。
交互式地使用 shell 正逐渐成为一门黑魔法。幸运的是,UNIX Power Tools 涵盖了您需要了解的关于这个主题的一切。以下是本书中的一些示例,让您了解它涵盖的内容。首先,以下是如何编辑三个现有文件:afile、bfile 和 cfile
emacs [a-c]file
许多人已经知道如何做到这一点;但是,它仅在文件已存在的情况下才有效。鲜为人知的是,如果文件尚不存在该怎么办。在这种情况下,您可以使用以下命令一次编辑所有三个文件
emacs {a,b,c}file有了这些信息,很容易弄清楚如何制作备份文件
cp filename{,.bak}此命令会将文件名复制到 filename.bak。以下是如何使用相同的想法来打印六个或更多文件
lpr /usr3/hannah/training/{ed,vi,mail}/lab.{ms,out}您是否对 find 命令感到困惑?阅读第 17 章后,您将不会有任何问题,该章有 24 页专门介绍 find。文件权限和进程也在各自的章节中进行了深入介绍。甚至通配符也有自己的章节。整章还专门介绍了打印、终端和串行线路设置。(本书包括对 termcap 和 terminfo 的精彩解释。)
vi 获得了两个大的章节,而 Emacs 则被降级为“另一个编辑器”,并且只给了可怜的十页。vi 的内容可能包括您需要了解的关于它的一切,而 Emacs 部分基本上涵盖了一些节省时间的技巧和最基本的命令,例如
ESC-x psychoanalyze-pinhead
不过,本书中缺少的是我最喜欢的 Emacs 娱乐功能
ESC-9 ESC-x hanoi需要记住的重要一点是,无论您现在拥有何种级别的 UNIX 或 Linux 专业知识,您都可以学到更多。有些提示是针对初学者的,但有些甚至可能让最有经验的用户说:“嘿,我从来不知道……”
这里有一个问题问您。在 Bourne shell 下,您如何运行一个程序,同时将标准错误通过管道传送到邮件程序,并将标准输出留在屏幕上?答案很简单
(program 3>&1 1>&2 2>&3 3>&-) | mail ockman &
尽管 bash 和 tcsh 得到了特别提及(以及更通用的 Bourne shell 家族和 csh),但功能最强大的 shell zsh 却被遗漏了。由于本书的大部分内容都 посвящена shell,这很令人烦恼。任何真正有兴趣拥有最大“power”的人都会选择 zsh。不过,由于 zsh 在很大程度上是其他 shell 的超集,因此几乎所有的技巧仍然很有帮助。
sed 的覆盖范围相当广泛,而 awk 的覆盖范围也足够。此外,在我看来,如今您需要了解的关于 sed 和 awk 的所有知识就是您分别使用 s2p 和 a2p 将您的代码翻译成 Perl。说到 Perl,本书有一些关于您为什么要学习 Perl 的文章,但没有提供任何真正的帮助。它确实提供了购买其他 O'Reilly 书籍的好建议。
本书也没有涵盖网络或 X Window 系统,但这很好,因为它为更重要的事情留出了空间。不幸的是,它也没有特别提及 Linux,尽管本书中的几乎所有信息都适用于 Linux。
本书包含一张程序 CD-ROM。这些程序中的许多可能已经安装在您的 Linux 系统上,但您会发现其他一些程序也很有用。本书的文本中讨论了所有程序。该 CD 包括 Intel Linux 和少数 UNIX 平台的源代码和二进制文件。它没有明确说明各种程序属于哪个许可证。
UNIX Power Tools 强烈推荐。这是 O'Reilly 出版的又一本令人惊叹的书。在消化完一千多页内容后,您将成为命令行方面的专家。
Samuel Ockman 拥有 Penguin Computing (http://www.penguincomputing.com/)。他将所有空闲时间都用来喋喋不休地说 zsh 有多棒。他即将出版的著作《Linux 环境中的超级高级编程》正处于非常早期的规划阶段。您可以通过 ockman@penguincomputing.com 向他发送电子邮件。