unix linux大学教程pdf,<原>[书摘]Unix&Linux大学教程(上)

1.

本书将改变您的生活。这样评价一本计算机图书可能非常奇怪,但是我们可以保证,在看完本书后您的生活将会发生改变。您思考问题的方式和解决问题的方式将会有所不同。

2. 我希望您衡理解的是Unix不仅仅是一种操作系统——Unix简直就是一种文化。

3. 您可以数月连续使用一台计算机,而不必重启计算机。

4.

Multics的目标是在同一时间为多个用户提供众多功能。Multics非常庞大,难以使用,而且还有许多问题。Thompson的系统比较小、要求较低(至少在刚开始时),而且一次只能由一个人使用。另外系统的每个部件只限于完成一件事情,并且出色地完成这件事情。Thompson决定将他的系统命名为Unics(“Uni”意味着“一个”),后来很快又将Unics修改成Unix。

5. 当Unix人士使用计算机时,他们希望发挥主动作用,感觉是自己在控制计算机。他们不希望感觉是在被计算机控制。

6. 要想学习Unix的所有方面是不可能的。在学习Unix时要集中在您需要的以及感兴趣的内容上。

7. 一定不要去记忆每个细节。首先学习基本知识。然后再学习希望学习的内容,顺序可以由自己决定。

8.

引导的思想就是一个困难的、复杂的目标可以通过一个小的动作开始,然后以这个小的动作为基础,一步一步地到达期望目标而完成。计算机系统就是以这样方式启动的。当打开计算机的电源(或者重启计算机)时,一个单独的、小型的程序自动运行。这个程序启动另一个程序,一个更复杂的程序,然后逐步递进。最终,操作系统(一个非常复杂的程序)接过控制,完成初始化过程。

9.

Stallman的指导原则就是“计算机用户应该能够自由地修改软件以适应自己的需求,并且自由共享软件,因为帮助他人是基本的社会责任。”

10. Linus Torvalds是一个在合适的时间、合适的地点提出合适的思想的最典型的人。

11. Linus

Torvalds是一个技能和知识极端丰富的程序员。他是一名高效的工人,而且他热爱程序。换句话说,他正好是那种准备自己编写操作系统内核的人。其次Linus是一名无止境的完美主义追求者。Linus致力于他的工作,当遇到问题时,他会放弃休息,直至找到合适的解决方案。第三,Linus拥有令人喜爱的个性。人们描述他是一个低调、谦逊的家伙,一个诚实的高尚人物。无论是当面还是在线,Linus与他人相处得都非常融洽。第四,也是最重要的一点,就是Linus拥有使用Internet的天分,可以将编程天才的智慧通过Internet融合在一起:成千上万人志愿参与修改及扩展Linux内核。

12. Linus法则:“Given enough eyeballs, all bugs are

shallow(让足够多的人阅读源代码,错误将无所遁形)”。

13. 从一开始,Linus

Torvalds就非正式地使用名称Linux,“Linux”是“Linus'Minix”的缩写。

14. Unix是一组为聪明人准备的工具。

15. 系统管理永远是一个经验学习的过程(如果没有学会别的,那么至少学会了耐心)。

16. 资深工程师们在工作中会积累大量的隐形知识,他们用类似禅宗“教外别传”的方式,通过言传身教传授给后辈。

17.

当一个复杂的软件产品刚开始的时候,它还没有吸引众多的用户。这意味着开发人员不必考虑对许多人造成不便或者“破坏”使用该产品的程序,因此可以快速地对产品进行修改。一旦产品获得了大量的安装,而且程序员已经编写了大量依赖于该产品的软件,那么对软件进行重大修改就变得异常困难。

18. 大量的用户妨碍未来的发展。这千真万确,而且值得牢记,因为这是软件设计的一个重要的长远原则。

19.

X程序员所展现的是,当您开发一个重要的产品而且希望它能持续很长一段时间时,在开头花大量的时间是值得的。一个灵活的、深思熟虑的设计可以使产品的生命力持久。

20. 进程就是装载到内存中准备运行的程序,以及程序的数据与跟踪程序状态所需的信息。

21.

为了有效地工作,Termcap数据库必须包含每台Unix可能使用的终端的每种变体,而且所有这些数据都必须包含在一个单独的文件中。多年以来,随着新型终端的不断出现,Termcap文件变得日益庞大,从而使它难以维护,搜索变慢。贝尔实验室的程序员用一个新的工具Terminfo(即terminal

information)替换了Termcap。Terminfo将数据存储在一些列文件中,每种终端一个文件。

22. 所有用户——不管是新用户还是有经验的用户——都需要在请求帮助之前尽自己最大的努力解决自己的问题。

23.

RTFM是一个动词,表示这样的思想,即当您需要信息或者在解决问题时,在请求他人帮助之前,应该花一些时间尝试自己去寻找所需的东西。

24. 和许多技术单词一样,RTFM刚开始时是一个只取首字母的缩写词,在Unix的早期时代,RTFM代表“Read the

fucking mannual(阅读该死的手册)”。

25. 如果不能使用自己喜欢的shell,那么就喜欢正在使用的shell。

26. export PAGER=less 尽管许多人使用两条命令来设置和导出变量,但是使用一条命令完

成两份作业可以显示出您是一个聪明的人,与众不同的人。

27. Unix传统的一部分就是当有人创建了新工具时,他应该为其他用户提供该工具的文档资料。

28.

shell将历史列表存储在一个文件中。它在注销时可以自动保存这个文件,登录时可以自动恢复这个文件。这非常重要,因为这意味着一个工作会话中的工作记录将保存到另一个工作会话中。

29. 假设您希望删除一组名为temp、temp_backup、extra1和extra2的文件。您考虑输入下述命令:rm

temp*

extra?,但是您忘了还有一个重要的文件temp.important。如果输入上述明亮的话,这个文件也将被删除。更好的策略就是先按照rm命令准备使用的模式来使用ls命令:ls

temp*

extra?,该命令将列举所有匹配这一模式的文件。如果该列表包含已经忘记的文件,例如temp.important,那么您就不能再按计划输入rm命令。但是如果文件列表正好符合期望,那么就可以继续前进,通过将ls替换为rm并重新执行该命令删除所有的文件。对于Bourne

shell,可以使用:fc -s

ls=rm,对于C-Shell,可以使用:^ls^rm。你或许会问,为什么要重用上一条命令呢?一旦确认这个模式匹配希望删除的文件,为什么不适用相同的模式简单地键入rm命令呢?你当然可以这样,但是,重用ls命令可以确保准确地获得期望的内容。如果重新键入模式,那么不管多么小心,都有可能产生键入错误,最终删错文件。另外,在许多情况下,修改上一条命令要比重新键入一条命令快。

30.

假设您使用的是一个Linux系统,您希望改变到下述目录中:/usr/lib/ImageMagick-5.5.7/modules-Q16/filters。您可以键入cd命令,后面跟着这个非常长的目录名。但是,键入最低数量的字符并使用自动补全特性将简便许多。在这个例子中,对于Bash,可以键入:cd

/us/li/Im/mo/fi。

31.

当编辑常规的文本文件时,对于初学者来说,vi是最好的选择。这是因为,尽管vi比较难学,但是Emacs更加难学。

32.

我的建议是在做任何事情时,记录下正在做的事情。并且,要保证您所编写的任何东西,其他人都能够理解。相信我,随后您将会发现,您永远不会为添加注释所花费的时间而感到遗憾。

33.

每个程序都应该是一个单独的工具,或许还有几个基本的选项。一个程序应该只做一件事,但必须出色地完成这件事情。如果需要执行一项复杂的任务,应该通过对现有工具的组合来完成(当存在可能性时),而不是再去编写一个新程序。

34. 所谓的Unix新设计准则:“除非程序无法更小,否则小的就是完美的。”

35.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值