参考书目

 

那些不理解 UNIX 的人注定要拙劣地重新发明它。

--亨利·斯宾塞

彼得·丹宁编辑,《计算机攻击:入侵者、蠕虫和病毒》,ACM 出版社,1990 年,0-201-53067-8。

这本汇编包含了几篇关于 shell 脚本病毒的文章。

*

肯·伯奇,《Linux Bash Shell 脚本编程》,第 1 版,Sams Publishing (Pearson),2004 年,0672326426。

涵盖了与 ABS 指南 大部分相同的材料,尽管风格不同。

*

丹尼尔·戈德曼,《Sed 权威指南》,第 1 版,2013 年。

这本电子书是 sed 的优秀入门读物。它不是从印刷卷转换而来,而是专门为在电子书阅读器上查看而设计和格式化的。文笔流畅,内容丰富,既可用作参考,也可用作教程。强烈推荐。

*

戴尔·多尔蒂 和阿诺德·罗宾斯,《Sed 和 Awk》,第 2 版,O'Reilly and Associates,1997 年,1-156592-225-5。

要充分发挥 shell 脚本的威力,至少需要对 sedawk 有粗略的了解。这是经典的教程。它包括对 正则表达式 的出色介绍。推荐。

*

杰弗里·弗里德尔,《精通正则表达式》,O'Reilly and Associates,2002 年,0-596-00289-0。

仍然是关于 正则表达式 的最佳综合参考。

*

艾琳·弗里施,《Essential System Administration》,第 3 版,O'Reilly and Associates,2002 年,0-596-00343-9。

这本优秀的​​手册从系统管理员的角度对 shell 脚本编写进行了不错的介绍。它包括对 UNIX 系统中启动和初始化脚本的全面解释。

*

斯蒂芬·科钱 和帕特里克·伍德,《Unix Shell Programming》,Hayden,1990 年,067248448X。

仍然被认为是标准参考,尽管有些过时,并且风格上有点 “木讷”[1] 事实上,这本书是 ABS 指南 作者多年前首次接触 UNIX shell 脚本编程。

*

尼尔·马修 和理查德·斯通斯,《Beginning Linux Programming》,Wrox Press,1996 年,1874416680。

令人惊讶的是,它深入介绍了 Linux 可用的各种编程语言,包括关于 shell 脚本的相当有力的章节。

*

赫伯特·梅耶,《IBM PC 上的高级 C 编程》,Windcrest Books,1989 年,0830693637。

出色地涵盖了算法和通用编程实践。强烈推荐,但不幸的是已绝版。

*

大卫·梅迪内茨,《Unix Shell Programming Tools》,McGraw-Hill,1999 年,0070397333。

对 shell 脚本编写进行了相当不错的处理,带有示例,以及 Tcl 和 Perl 的简短介绍。

*

卡梅伦·纽汉 和比尔·罗森布拉特,《Learning the Bash Shell》,第 2 版,O'Reilly and Associates,1998 年,1-56592-347-2。

这是一本关于 shell 入门读物的勇敢尝试,但遗憾的是,它在脚本编写方面的介绍不足,并且缺乏足够的示例。

*

阿纳托利·奥尔扎克,《Bourne Shell Quick Reference Guide》,ASP,Inc.,1991 年,093573922X。

非常方便的袖珍参考,尽管缺乏对 Bash 特定功能的介绍。

*

杰里·皮克蒂姆·奥莱利和迈克·卢基德斯,《Unix Power Tools》,第 3 版,O'Reilly and Associates,Random House,2002 年,0-596-00330-7。

包含几节关于 shell 编程的非常内容丰富的深入文章,但不足以成为自学手册。它再现了上面多尔蒂和罗宾斯书中的大部分 正则表达式 教程。对 UNIX 命令的全面介绍使本书值得在您的书架上占据一席之地。

*

克利福德·皮科弗,《计算机、模式、混沌与美》,St. Martin's Press,1990 年,0-312-04123-3。

计算机探索数学奇特想法和秘诀的宝库。

*

乔治·波利亚,《How To Solve It》,普林斯顿大学出版社,1973 年,0-691-02356-5。

关于问题解决方法(算法)的经典教程,特别强调如何教授它们。

*

切特·雷米 和布赖恩·福克斯,《GNU Bash 参考手册》,Network Theory Ltd,2003 年,0-9541617-7-7。

本手册是 GNU Bash 的权威参考。本手册的作者切特·雷米和布赖恩·福克斯是 GNU Bash 的原始开发者。每售出一本,出版商都会向自由软件基金会捐赠 1 美元。

*

阿诺德·罗宾斯,《Bash Reference Card》,SSC,1998 年,1-58731-010-5。

优秀的 Bash 袖珍参考(出门在外请务必携带,尤其是如果您是系统管理员)。售价 4.95 美元很划算,但不幸的是,不再提供免费下载。

*

阿诺德·罗宾斯,《Effective Awk Programming》,自由软件基金会/O'Reilly and Associates,2000 年,1-882114-26-4。

绝对是最好的 awk 教程和参考。本书的免费电子版是 awk 文档的一部分,最新版本的印刷版可从 O'Reilly and Associates 获得。

本书是 ABS 指南 作者的灵感来源。

*

比尔·罗森布拉特,《Learning the Korn Shell》,O'Reilly and Associates,1993 年,1-56592-054-6。

这本写得很好的书包含一些关于通用 shell 脚本编写的出色指导。

*

保罗·希尔,《LINUX: Rute 用户教程和博览》,第 1 版,,2002 年,0-13-033351-4。

非常详细且可读的 Linux 系统管理入门。

这本书有印刷版,或 在线版

*

艾伦·西弗 和 O'Reilly and Associates 的员工,《Linux in a Nutshell》,第 2 版,O'Reilly and Associates,1999 年,1-56592-585-8。

最好的综合 Linux 命令参考。它甚至有一个 Bash 部分。

*

戴夫·泰勒,《Wicked Cool Shell Scripts: 101 Scripts for Linux, Mac OS X, and Unix Systems》,第 1 版,No Starch Press,2004 年,1-59327-012-7。

几乎就是标题所承诺的……

*

The UNIX CD Bookshelf,第 3 版,O'Reilly and Associates,2003 年,0-596-00392-7。

CD-ROM 上七本 UNIX 书籍的集合,包括 UNIX Power ToolsSed and AwkLearning the Korn Shell。一套完整的 UNIX 参考资料和教程,您永远需要,大约 130 美元。买这本,即使这意味着负债累累,付不起房租。

更新:似乎不知何故绝版了。好吧。您仍然可以购买这些书的纸质版。

*

O'Reilly 关于 Perl 的书籍。(实际上,任何 O'Reilly 的书籍。)

* * *

其他资源

Fioretti, Marco,《“Scripting for X Productivity”》,Linux Journal,第 113 期,2003 年 9 月,第 86-9 页。

Ben Okopnik 在 Linux Gazette 第 53、54、55、57 和 59 期中撰写的 Bash 脚本入门 文章,以及他在第 56 期中对 “Bash 的黑暗秘密” 的解释。

Chet Ramey 的 Bash - GNU Shell,发表在 Linux Journal 1994 年 7-8 月第 3 期和第 4 期中的两部分系列文章。

Chet Ramey 的 Bash FAQ

示例 shell 脚本,位于 Lucc's Shell Scripts

示例 shell 脚本,位于 SHELLdorado

示例 shell 脚本,位于 Noah Friedman 的脚本站点

示例 来自 Albing、Vossen 和 Newham 的 The Bash Scripting Cookbook

示例 shell 脚本,位于 zazzybob

Steve Parker 的 Shell Programming Stuff。实际上,他的所有 shell 脚本编程书籍都强烈推荐。另请参阅 Steve 的 用 shell 脚本编写的街机游戏

Bash Hackers Wiki 上收集了大量关于 Bash 脚本编写的技巧、窍门和资源。

Giles Orr 的 Bash-Prompt HOWTO

非常好的 sedawk 和正则表达式教程,位于 The UNIX Grymoire

GNU sed gawk 手册。您可能还记得,gawk 是增强型的 GNU 版本 awk

seder's grab bag 中有很多有趣的 sed 脚本。

技巧和窍门,位于 Linux Reviews

Trent Fisher 的 groff 教程

David Wheeler 的 Shell 中的文件名 文章。

“Shelltris”“shellitaire”,位于 Shell Script Games

YongYe 精彩复杂的 俄罗斯方块游戏脚本

Mark Komarinski 的 Printing-Usage HOWTO

Linux USB 子系统(有助于编写影响 USB 外围设备的脚本)。

textutils 文档的第 10 章 中,关于 I/O 重定向 的一些不错的材料,位于 阿尔伯塔大学站点

Rick Hohensee 完全用 Bash 脚本编写了 osimpa i386 汇编器。

dgatwood 有一个非常好的 shell 脚本游戏 站点,其中包含俄罗斯方块克隆版和纸牌游戏。

Aurelio Marinho Jargas 编写了一个 正则表达式向导。他还用葡萄牙语编写了一本关于正则表达式的信息丰富的

Ben Tomkins 创建了 Bash Navigator 目录管理工具。

William Park 一直在致力于将某些 AwkPython 功能集成到 Bash 中的项目。其中之一是 gdbm 接口。他在 Freshmeat.net 上发布了 bashdiff。他在 文章 中,发表于 Linux Gazette 2004 年 11 月刊,关于向 Bash 添加字符串函数,在 12 月刊中有一篇 后续文章,并在 2005 年 1 月刊中 又一篇

Peter Knowles 编写了一个 精巧的 Bash 脚本,用于在 Sony Librie 电子书阅读器上生成书单。这个有用的工具方便了在 Librie(和较新的 PRS-xxx 系列 设备)上加载非 DRM 用户内容。

Tim Waugh 的 xmlto 是一个精巧的 Bash 脚本,用于将 Docbook XML 文档转换为其他格式。

Philip Patterson 的 logforbash 日志/调试脚本。

AuctionGallery,一个用 Bash 编码的 eBay “超级卖家” 应用程序。

具有历史意义的是 Colin Needham 的 原始国际电影数据库 (IMDB) 阅读器轮询脚本,它很好地说明了 awk 在字符串解析中的使用。不幸的是,URL 链接已损坏。

---

Fritz Mehner 为 vim 文本编辑器编写了一个 bash-support 插件。他还提出了他自己的 Bash 样式表。将其与 ABS 指南非官方样式表 进行比较。

---

Penguin Pete他的出色站点 上有很多 shell 脚本编写技巧和提示。强烈推荐。

Chet Ramey 和 Brian Fox 撰写的优秀 Bash 参考手册,作为 bash-2-doc 软件包的一部分分发(可作为 rpm 获得)。特别注意此软件包中的指导性示例脚本。

John Lion 的经典著作,《 第六版 UNIX 操作系统评论》。

comp.os.unix.shell 新闻组。

各种 comp.os.unix FAQ

涵盖 dc维基百科 文章

注释

[1]

很难抗拒明显的双关语。无意冒犯,因为这本书是对 shell 脚本编写基本概念的相当不错的介绍。