close
没有程序语言是完美的. 甚至没有一个唯一最好的语言,
只有对于特定目的, 比较适合和不适合的程序语言.
————Herbert Mayer

一、学习shell编程的理由是什么呢?
1、理解具体的linux系统机制
想一下Linux机器的启动过程, 在这个过程中, 必将运行/etc/rc.d目录下的脚本
来存储系统配置和建立服务. 详细的理解这些启动脚本对于分析系统的行为是非常
重要的, 并且有时候可能必须修改它.
2、提高开发和编译效率
使用linux时候,一些工程在开发和调试的工程中你不得不去重复输入一些相同的
linux命令,这个时候写一个合适的shell脚本会大大减少你的工作量。
3、开发前的验证分析
一些软件在开发之前可以使用shell编程进行功能模拟,程序的结果可以被测试和
尝试运行, 并且在处理使用诸如C/C++, Java或者Perl语言编写的最终代码前, 主要
的缺陷和陷阱往往就被发现了.

二、一般什么时候不适合使用Shell脚本?
1、资源密集型的任务, 尤其在需要考虑效率时(比如, 排序, hash等等).
2、需要处理大任务的数学操作, 尤其是浮点运算, 精确运算, 或者复杂的算术运算,
这种情况一般使用C++或FORTRAN来处理.
3、有跨平台移植需求(一般使用C或Java).
4、需要大规模的文件操作(Bash受限于顺序地进行文件访问, 而且只能使用这种笨拙的效率低下的一
行接一行的处理方式. ).
5、需要多维数组的支持.
6、需要数据结构的支持,比如链表或数组等数据结构.
7、需要产生或操作图形化界面GUI.
8、需要直接操作系统硬件.
9、需要I/O或socket接口.
10、需要使用库或者遗留下来的旧代码的接口.
11、个人的, 闭源的应用(shell脚本把代码就放在文本文件中, 全世界都能看到).

如果你的应用符合上边的任意一条, 那么就考虑一下更强大的语言吧--或许是Perl, Tcl, Python,
Ruby -- 或者是更高层次的编译语言比如C/C++, 或者是Java. 即使如此, 你会发现, 使用shell来原型
开发你的应用, 在开发步骤中也是非常有用的.
arrow
arrow
    全站熱搜

    主要步驟 發表在 痞客邦 留言(0) 人氣()