使用脚本语言bash的体会
使用脚本语言bash的体会
使用脚本语言bash的体会2011-09-22 16:10使用linux的bash脚本语言有一段时间了。同时又看了看bash4.0的一些最新功能和趋势。感觉是bash向着更自由的方向发展,多了些吸引人的功能。但是仔细看来,bash和10几年前并没有本质的不同。可以说,bash是类似于c语言的投资回报率最高的语言之一。在某些方面甚至高于C语言。因为C语言需要面临更多的新的类库的诞生,不同的API接口需要应对。而bash则是扎根于linux的系统命令,其核心体系相对稳定。想想10年前的JAVA,不可同日而语啊。bash是轻量级的工具,linux工作者人人都会用一点,但人人都不敢讲自己精通。不像其它重量级的语言那样可以可以放在简历上吹嘘一下,bash的经历顶多是一带而过。而且bash仍是不完善的,它的文本解析对于新手而言仍是容易出错的,它的数组机制和PHP相差甚远。它的'语法甚至有些笨重,远比不上后来者,像Python等。但PHP仍然仅仅存在于web,而不能像bash那样无处不在,这与bash的轻巧,和环境的充分融合有关系。
bash的强项也正是别的语言的弱项,bash具有非常便捷和强大的目录和文件处理能力。这主要是得益于linux平台命令行本身的强大。一般bash只是来写一些"程序片",连"应用"都称不上。但bash确实可以独立完成一些大的项目(特别是一些不是时间紧要型的应用),对于精通bash的人而言。
其实对于文本处理而言,更强大的是perl;简单的语法和强大的文本处理能力,而且很重要的一点是执行速度可以比bash快多了。但perl也仅仅是在一些年过半百的老程序员手里还当做宝贝,新生代程序员已经有太多的选择。但不论有再多选择,在linux平台上工作,linux命令是离不开的,linux脚本的使用就再自然不过了,而你永远也不用担心所在机器是否安装了bash。
可以总结一下为何使用bash:便捷。
有心想深入研究一下,又发觉很难。一是没有开发的目的,bash只能作为瘦客户端应用和服务器应用的开发工具;二是确实很难,因为你找不出一个可以说服自己的理由来精通所有bash的用法和每一个linux命令的使用。Bash不像C,总的有一个严禁的规则。另外我想,如果我没有linux的开发背景,我也不会研究bash,我可能首选其它跨平台的脚本,当然,也就失去了和linux平台环境融合的关系。Linux命令会的越多,越会倾向于使用bash。如果说VC++是面向组件编程,那么bash就是面向命令编程。输入==》命令==》输出。bash就是用来处理这些输入和输出。