background image

资深

Linux 程序员的开发经验谈

Sppence Murray 是 Linux 开发高手之一,同时长期以来他一直是 UNIX 的坚定支
持者。本文介绍的是

 Murray  和他在 Codemonks Consulting  的同事在日常的 

Linux 开发以及应用服务工作中用到的基本技术: shell 脚本,相信 Linux 的开发人员
都会受益于这项有用而且通用的技术。

  

Spence Murray 是 Codemonks Consulting 的创始人之一,自从 20 世纪 80 

年代最早在

 SunOS 上编写代码到现在,一直致力于 UNIX/Linux 的开发。从那时起,

他曾在

 IBM 公司的 AIX、SGI 公司的 Irix 工作,长时间地编写跨平台的 UNIX 代码,

包括

 HP/UX,Irix,Solaris/SunOS,SCO UNIX,各种 BSD,MacOS X,当然,还

 Linux。从图形/视频设备驱动程序到 UI 代码,他什么工作都做过。Murray 编写的

跨 平 台 代 码 包 括

  X  Window  System  Xserver  代 码 , 以 及 作 为   Netscape 

Navigator 一部分的核心浏览器代码。

  

Murray 最经常使用的 Linux 工具是 vi、bash 和 Emacs。“不论我是在写 C、C+

+、Java、shell 脚本,还是 HTML,大部分的时间我都在这些工具中来回切换”,他说。 

  

Linux 秘密武器

  

Murray 认为,对一个 Linux 开发人员来说,shell 是一个强大的软件开发工具,

无论怎么评价都不过分。

“在我做的每一项工作中都要用到 shell 脚本,不论是快速地

阅读和修改普通文本还是编写代码

”,他说。“它轻便而快捷,它短小的命令使得来回移

动代码称为一个迅速而没有痛苦的过程。作为一名编辑,它很快就会成为第二本能

”。

  对

 Murray 来说,Emacs 作为一个开发工具出现的晚了一些。“在 90 年代早期,

我尝试使用

 Emacs 作为一个 IDE,并很快就转换门厅。Emacs 非常强大,在那些日

子里,我会一直开着一个

 Emacs 窗口,经常打开几十个源文件,每个都有我编辑的

上下文、使用

 gdb 的调试会话以及在不同的源目录下运行的 bash 脚本。有很多关于 

Emacs 的资料,可以说,这是个可怕的工具...再者,您可以在任何您想要花时间去做
开发的系统上运行

 Emacs。

  自从

 20 世纪 80 年代中期第一次使用 SunOS 支持的 vi 这个简洁的环境以来,

Emacs 编辑器已经成为了 Murray 的标准工具。"它在各种流派的 UNIX 上都可以使
用,这是我在致力于跨平台的开发工作时选择它的主要原因之一

”,他说。 

  

Linux 开发人员:了解您的 shell

  

Murray 要求您要了解您的 shell。“Bash、tcsh、csh――shell 是您最基本的软件

开发工具

”,他强调说。“它可以做许多了不起的事情。所有的工作都要依赖于它……和

它的强大功能

”。作为说明通用的 shell 脚本功能强大的例子,在参考资料部分中有一

个可以下载的文件,其中有一组脚本,用于获得

 Red Hat 发行的更新 RPM 软件包并