天天看点

shell程序设计002

shell的语法:

变量-变量名前面加一个$符号来访问它的内容,再用echo命令将它的内容输出到终端上:

shell程序设计002

read命令将用户的输入命令赋给一个变量,再有echo输出:

shell程序设计002

引号的使用:

新建一个脚本 vim variables

shell程序设计002

/bin/sh variables执行

shell程序设计002

我们可以看出使用双引号并不影响变量的内容,但使用单引号和反斜杠就不进行变量的替换了!

环境变量:

echo $HOME :当前用户的主目录

echo $PATH :以冒号分隔的用来搜索命令的目录列表

echo ¥IFS:输入域分隔符当shell读取输入时,用来分隔单词的一组字符,通常是空格、制表符和换行符

参数变量:

$1,$2,。。。脚本程序的参数

$@访问脚本程序参数可以将参数彼此分开显示,不受IFS的影响:

shell程序设计002

条件:

使用shell的布尔判断命令 [ 或 test命令

shell程序设计002
shell程序设计002

test命令可以使用的条件类型有字符串比较,算术比较,文件有关比较的条件测试。

控制结构:

if语句-对某个命令的执行结果进行测试

shell程序设计002
shell程序设计002

注意: [ 前后加空格

eilf语句:相当于else if

shell程序设计002

当没有输入时会出现问题,如上所示,原因是出现了 if [ ="yes" ],这不是一个合法的条件,所以必须写成“$key”,当没有输入时候, if [ “”="yes" ],一个空变量给我们一个合法的测试。

for语句:循环的处理一组值,程序里在in后面简单的列出来了

shell程序设计002

结果:

shell程序设计002

while语句:

一直循环直到大于20

shell程序设计002

语法(($(foo+1)))用来对括号的表达式进行算术赋值

shell程序设计002