高级Bash脚本编程指南(1): 为什么使用shell编程

原创 2016年08月30日 00:15:45

毫无疑问,UNIX/Linux最重要的软件之一就是shell,目前最流行的shell被称为Bash(Bourne Again Shell)。作为系统和用户之间的交互接口,shell几乎是你在 UNIX工作平台上最亲密的朋友。 学好shell是学习Linux/UNIX的开始。

想真正学习脚本编程的唯一途径就是编写脚本。

shell是一个命令解释器,是介于操作系统kernel和用户之间的一个绝缘层。一个shell程序被称为一个脚本。所有的UNIX命令和工具再加上公共程序,对于shell脚本来说,都是可调用的。而且shell内建命令,比如test与循环结构,也会给脚本带来强力的支持和增加灵活性。

为什么使用shell编程?

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

shell脚本的语法是简单并且直观的,编写脚本很像是在命令行上把一些相关命令和工具连接起来,并且只有很少一部分规则需要学习。shell脚本遵循典型的UNIX哲学,就是把大的复杂的工程分成小规模的子任务,并且把这些部件和工具组合起来。

什么时候不使用shell脚本:

(1)资源密集型的任务,尤其在需要考虑效率时;

(2)需要处理大任务的数学操作,尤其是浮点运算,精确运算,或者复杂的算术运算;

(3)有跨平台移植需求;

(4)复杂的应用,在必须使用结构化编程的时候;

(5)对于影响系统全局性的关键任务应用;

(6)对于安全有很高要求的任务;

(7)项目由连串的依赖的各个部分组成;

(8)需要大规模的文件操作;

(9)需要多维数组的支持;

(10)需要数据结构的支持,比如链表等数据结构;

(11)需要产生或操作图形化界面GUI;

(12)需要直接操作系统硬件;

(13)需要I/O或socket接口;

(14)需要使用库或者遗留下来的老代码的接口;

(15)私人的,非开源的应用(要知道shell脚本把代码就放在文本文件中,全世界都能看到);


即使你使用更高级的语言来开发你的应用,使用shell来原型开发你的应用,在开发步骤中也是非常有用的。

Bash是"Bourne-Again Shell"首字母的缩写;Bash已经成为了所有UNIX中shell脚本的事实上的标准了。根据惯例,用户编写的Bourne Shell脚本应该在脚本的名字后边加上".sh"扩展名。一些系统脚本,比如那些在/etc/rc.d中的脚本,则不遵循这种命名习惯。



版权声明:本文为博主原创文章,未经博主允许不得转载。

高级Bash脚本编程指南(4):shell中的引用

高级Bash脚本编程指南(4):shell中的引用 成于坚持,败于止步 引用的字面意思就是将字符串用双引号括起来. 它的作用就是保护字符串中的特殊字符不被shell或者shell脚本重新解释, 或...

高级Bash脚本编程指南(1):从一个简单的script出发

高级Bash脚本编程指南:从一个简单的script出发 成于坚持,败于止步 开始shell脚本编程学习,路途遍布荆棘啊,O(∩_∩)O~,开始吧,这是“高级Bash脚本编程指南”为我们量身打造的“...

高级Bash Shell脚本编程指南

  • 2014年07月16日 15:34
  • 1.3MB
  • 下载

高级Bash脚本编程指南(12):指定变量的类型: 使用declare或者typeset

高级Bash脚本编程指南(12):指定变量的类型: 使用declare或者typeset 成于坚持,败于止步 declare或者typeset内建命令(这两个命令是完全一样的)允许指定变量的具体类...

高级Bash脚本编程指南(28):文件与归档命令(一)

高级Bash脚本编程指南(28):文件与归档命令(一) 成于坚持,败于止步 归档命令 tar 标准的UNIX归档工具. 起初这只是一个磁带归档程序, 而现在这个工具已经被开发为通用打包程序, ...

高级Bash脚本编程指南(32):混杂命令(一)

高级Bash脚本编程指南(32):混杂命令(一) 成于坚持,败于止步 一些不好归类的命令 jot, seq 这些工具用来生成一系列整数, 用户可以指定生成范围. 每个产生出来的整数一般都占一...

高级Bash脚本编程指南(25):文本处理命令(一)

高级Bash脚本编程指南(25):文本处理命令(一) 成于坚持,败于止步 处理文本和文本文件的命令 sort 文件排序, 通常用在管道中当过滤器来使用. 这个命令可以依据指定的关键字或指定的字...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:高级Bash脚本编程指南(1): 为什么使用shell编程
举报原因:
原因补充:

(最多只允许输入30个字)