shell脚本基础——常用语句

shell脚本中的常用语句其实和c语言中的常用语句很相似,我们来看看他们的具体用法。

for 语句

格式:

for i in 1 2 3
do
done

i表示一个变量,这个变量先后等于后面所跟的常量1,2,3,要编写的内容在do和done的中间,这相当

同时for语句还有下面这些格式:

for i in {1..3}
do
done

for i in `seq 1 3`
do
done

在这里插入图片描述
在这里插入图片描述
一个简单的for语句脚本,输出123.
在这里插入图片描述
在这里插入图片描述
for语句还可以这样用,这里我写了一个倒计时。

while语句

格式:

while 条件
do
done

同样,将需要编写的内容写到do和done之间。

在这里插入图片描述
在这里插入图片描述
用while语句实现循环

if语句

格式:

if 
条件
then
elif 
条件
then
else
fi

在这里插入图片描述
在这里插入图片描述
一个简单的if语句

case语句

格式:

case 字符 in
	a)
	语句1
	;;
	b)
	语句2
	;;
	c)
	语句3
	;;
esac

在这里插入图片描述
在这里插入图片描述
一个简单的case语句。

expect自动应答命令

expect命令是一个自动应答命令,也就是我们可以事先设定好我们需要的答案,然后有了这个答案我们就可以对一些命令产生的问题进行自动应答。
使用这个命令之前,我们要先安装一个软件。

yum install expect -y

以一个例子来说明这个命令的作用吧,首先,我先写一个简单的示例脚本。
在这里插入图片描述
执行这个脚本需要输入相应的答案。
在这里插入图片描述
这时,我们的expect命令就派上用场了。

vim expect_test.exp

注意这里的后缀最好以exp结尾
在这里插入图片描述
为刚才那个脚本准备答案
在这里插入图片描述
执行这个脚本,可以发现,刚才需要回答的问题都自动回答了。
我们也可以设置手动输入答案
在这里插入图片描述
我们看第二第三行,按照这个格式,我们可以设置我们输入的第一个答案,还有第二个答案,以此类推。
在这里插入图片描述
我们发现,前面使用这个命令时,使用的环境不是我们常常使用的/bin/bash环境,这对我们写其他脚本时会很不方便所以,我们下面来看看如何将expect命令用在/bin/bash环境。
在这里插入图片描述
我们在使用expect命令时对刚才的内容作一个输入重定向就可以了。

脚本中的语句控制器

exit n 脚本退出,退出值为 n
break 退出当前循
continue 提前结束循环内部的命令,但不终止循环

猜你喜欢

转载自blog.csdn.net/qq_41961805/article/details/88430135
今日推荐