shell:命令解析器
1.Shell是什么?
简单来说shell是脚本语言,本身是一个用C语言编写的程序,用来实现命令的批处理。
确切一点说,Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。
2.程序第一行
#!/bin/sh
#!用来告诉系统它后面的参数是用来执行该文件的程序。
要使脚本可执行:
chmod +x filename
然后输入./filename来执行脚本
在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。建议使用注释,防止长时间不用导致忘记该脚本的作用及工作原理。
3.变量
在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。要赋值给一个变量,您可以这样写:变量名=值
注意:
-取出变量值可以在变量前加一个($)
-变量赋值时,“=”两边都不能有空格
-语句结尾不需要分号
默认变量:
在命令后面跟的就是命令行参数
$#:传入脚本的命令行参数个数
$*:所有命令行参数值,在各个参数值间留有空格
$0:命令本身(shell文件名)
$1:第一个命令行参数
$2:第二个命令行参数
局部变量:
局部变量,也称内部变量,是指在一个函数内部或复合语句内部定义的变量。
局部变量的生存期:从函数被调用的时刻算起到函数返回调用处的时刻结束
使用方法:在变量首次被复制时加上local关键字可以一个局部变量。
If语句
(1)
If [expression]
then
#code block
fi
(2)
If [expression]
then
#code block
else
#code block
fi
(3)
If [expression]
then
#code block
else if [expression]
then
#code block
else
#code block
fi
fi