首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Linux学习札记四:Shell编程

2012-09-20 
Linux学习笔记四:Shell编程什么是Shell ?简单地讲,shell就是一个命令解析器,把你输入的命令解析给系统“听”

Linux学习笔记四:Shell编程

  什么是Shell ?  简单地讲,shell就是一个命令解析器,把你输入的命令解析给系统“听”,也就是执行。


  shell的种类有很多,其中有Bourne shell(sh)   Korn shell(ksh)   Bourne Again shell (bash) 

                                                   C shell  (包括csh  and  tcsh)   TENEX/TOPS C shell (tcsh)  等等,其中用得最多的该是bash了吧。


什么是shell脚本?shell脚本就是包含一系列命令序列的文本文件,这个就像Windows下的.bat批处理命令文件一样,把你所有的想要系统帮你完成的任务命令都堆在一个小小的文本里,然后简单地点击一下文本就可以啦,是不是很高的效率?是不是也可理解为一个程序?shell脚本就是这么一回事,没什么了不起的,我刚学的时候也被这个名词给忽悠了哈,羞。

 

好吧,下面以一个简单的实例来看看我们的shell脚本的语法及框架式怎样的:

Linux学习札记四:Shell编程


1.shell脚本的第一行必须是以如下格式出现:#!/bin/sh    其中的#!号(整体来看)用来指定该脚本文件的解析程序。在我们的这个例子中使用/bin/sh来解析脚本,需要注意的一点是当我们写完shell脚本后记得要用chmod命令为其添加权限(执行可读或者可写) 

2.#号是用来注释的,注释直到该行结束,当然这里不要把第一行的#!错看成注释咯,整体!!

3.shell中的变量是不需要声明的,直接用即可,使用时需加上一个美元符号$,这里需要提醒一点的是注意变量与字符的混淆,例如我想要输出10nd(num=10   用$numnd会输出空字符,因为系统遇到$符号后会自动搜索其后紧跟着的字符串以确定所引用的变量,在这里系统误认为我们要引用的变量为numnd,而实际上我们并没有给numnd变量赋值,所以最终系统输出空字符。局部变量第一次赋值时需要加上local关键字,这一点跟c,java等编程语言有所不同!还有需要注意的是“=”两边不能留空格!而比较语句“=” 左右两边都应该留有空格,以及“【”“】”等。


其实shell里面是有默认变量的,共五个:1.$#:输入脚本的命令行参数个数   2.$*所有命令行参数值  3.$0:命令本身(shell文件名)4.$1第一个参数类似地$2为第二个参数...


热点排行