推进用户的Linux / Unix好书是什么?
对于一个相对较新但不是全新的* nix用户来说,有没有什么好书可以深入了解一些知识(所以没有“Linux for Linux”)? 大多数情况下,我并没有从头到尾查找某些东西。 相反,当我需要知道如何做某事时,或者每当我有其中一个“我该怎么做?”时,我宁愿有一些东西可以拿起来阅读。 时刻。 有些地方我想看到的是:
- 命令行pipe理
- bash脚本
- 编程(虽然我想要的东西不只是与C程序员相关)
我希望这是尽可能平台独立(这意味着它有任何Linux发行版以及BSD,Solaris,OS X等相关的信息),但我使用最多的UNIX系统是OS X和于Debian / Ubuntu。 所以如果我从更多依赖平台的书中获益最多的话,那就是目标平台。
如果我能在一本书中得到所有这些,那么很好,但是我宁愿有一些比任何事情都更深入的材料。 因此,如果有任何书籍只包含这些领域之一,请发布。 地狱,即使它与任何这些领域都没有关系,你认为这是我所处位置的人应该知道的东西。
我已经wiki'd这个职位 – 可以那些有足够的代表添加项目。
系统pipe理,一般用法书
-
Nemeth et。 al, Linux系统pipe理
-
犰狳书,如下面的比尔蜥蜴提到的。
-
任何由马克Sobell 。 他为各种不同口味的unix做了一些主题和变化,所以select最适合当前环境的书。 书很好。 当我做了我的学士学位时,他的一个是规定的文本。
-
史蒂文斯的TCP / IP插图,第一卷。 1:“协议”全面阐述了TCP / IP如何工作的细节。
-
我从来没有读过这本书,但很多人都在推荐Hortitude提到的Unix Power Tools 。
编程:
-
任何由W. Richard Stevens撰写的文章,特别是Unix环境和Unixnetworking编程 中的高级编程 。 1 和卷。 2
-
各种经典的C / UNIX书籍,如Unix编程环境 , 高级Unix编程 , 编程珍珠 ,当然还有K&R 。 C / Unix书籍倾向于进入底层架构,并将提供一个相当全面的洞察力,这些都是系统内部的基本机制。 任何试图进行系统级编程的人(基本上任何使用系统服务的东西,不pipe用什么语言)都会在这里find一个有利的基础。
具体工具(如Sendmail)
来自O'Reilly和其他出版商的各种书籍涵盖了特定的主题。 一些关键的是:
-
sendmail上的蝙蝠书 – 如果您有机会体验使用sendmail.cf的乐趣。 如果你有MTA的select, postfix或者qmail可以更容易地处理(自2000年以来我一直使用postfix)。 奥雷利向他们发布指南。
-
perl上的一些经典着作: 骆驼和骆驼的书(后者是Randal Schwartz写的)。
-
Sed和awk 。 不知道封面上的生物是什么。 我的副本不久前就南下了。 关于这个问题, 掌握正则expression式也在这里被提及,并且是关于这个主题的一本好书。
-
桑巴 。 犀鸟(?)书覆盖了这个; 还有相当 多 的 在线 文档 。
-
适用于使用或维护Unix或Linux客户端的NFS / NIS 。
其中一些书已经印刷了一段时间,并且仍然相关。 因此,它们通常也可以以比标价低得多的二手货。 亚马逊的市场是寻找这样的项目的好地方。 这是一个很好的方法来做一个像这样的话题霰弹枪没有多less钱。
例如,新西兰的技术书籍由于猕猴桃比索较弱(因为新西兰人在外派界深受欢迎)和一个长期的供应链,这些书的价格是非常昂贵的。 你可以在一本书上花一周的税后工资的20%。 当我住在那里的时候,我刚从大学那里学到了很多东西,他们经常购买书价的四分之一,包括运到新西兰的费用。 如果你不住在一级收入的地方,我推荐这个。
电子书和在线资源(感谢israkir提醒我):
-
Linux文档项目( http://www.tldp.org )有许多特定的主题指南,称为HowTos ,这些指南也经常涉及第三方OSS工具,并将与其他Unix变体相关。 它也有一系列的FAQ和指南 。
-
Unix大师的宇宙是一个有点老派风格的unix资源的集合。
-
谷歌。 networking上有许多unix和linux资源。 searchstring,如unix命令或学习unix将调出任何数量的在线资源。
-
Safari 。 这是一个订阅服务,但你可以search相当多的书籍的文本。 我可以推荐这个,因为我用过它。 他们还为企业客户提供网站许可证。
Unix的一些哲学:
-
ES Raymond 的UNIX编程艺术 (可在线和打印)。
-
BW Kernighan和R Pike 编程的实践 。
我发现Unix Power Tools是我最好的资源之一。 它可能没有教程,但它是一个很好的参考。
Unix编程艺术是一本我以前发现很有帮助的书,尽pipe对其他非Unix平台有点偏向。
O'Reilly的书籍具有出色的* nix覆盖率。 我有这些:
学习bash Shell
*涵盖几个基本的* nix命令行工具以及更高级的shell脚本技术。
学习vi和Vim编辑器
*无价。 让我能够非常快速地从shell中编辑或创buildshell脚本,configuration文件,Python脚本。
我推荐使用O'Reilly的Armadillo来进行命令行pipe理和shell脚本编写。
杰森,
Kernighan和Pike的Unix编程环境将为您提供关于Unix所有事情的坚实基础,并且应该涵盖大部分与shell命令行脚本相关的问题。
O'Reilly的Armadillo书将增加行政angular度。 它给了我很好的服务!
祝你好运!
上述的Unix电源工具是必须的。 其他的经典是sed&awk和掌握正则expression式 。 我也喜欢O'Reilly的“Cookbook”系列书籍:
- Bash食谱由Albing等。
- 由Carla Schroder编写的Linux Cookbook
- Linux联网手册 Carla Schroder
高级Bash脚本指南是唯一真正允许读者抨击bash脚本的书。 您需要这种能力才能完全理解如何启动/停止守护进程并自动完成大量任务。
替代文字http://img56.imageshack.us/img56/6668/0596005288500jx2.gif
在我看来,你将会学习更多的东西,只要在一个* nix盒子里find你感兴趣的东西。 如果您对networking没有兴趣,那么阅读BIND是浪费时间。
AWK编程语言
不仅介绍了awk
的多function工具,而且还介绍了基于Unix的哲学和一些awk
“devise模式”。
基本系统pipe理和Unix电源工具的大同意。
另外,无论您select哪种编辑器,vim或emacs,都可以前后学习。 如果你喜欢vim,那么得到Steve Oualline的vim书。
一般而言,关于Ubuntu和Linux,一本好书:
- 黑客攻击Ubuntu Neal Krawetz
- Michael Jang对Linux的烦恼
Stephen Kochan的“Unix Shell编程”和“探索Unix系统”
- sed&awk Dougherty和robbins
- 掌握正则expression式Jeffrey Friedl
- 简而言之,Linux可以查找,尽pipe大部分的信息也都在manpages中
- Vim Steve Oualline