shell脚本

选择执行语句:if、case

if语句:

if语句可以嵌套;

	if:
		单分支:
			if expression;than
				do
			fi
		双分支:
			if expression;then
				do
			else	
				do
			fi
		多分支:
			if expression;then
				do
			elif expression;then
				do
			。。。
			else	
				do
			fi
	case:

循环执行语句:for、while、until

循环体:要循环执行的代码;
进入条件:进入循环的条件;
退出条件:退出循环的条件;

for语句:

进入条件:从变量列表的第一个变量开始;
退出条件:到变量列表的最后一个变量结束;
语法:
	for var in var-list;do
		循环体;
	done
var-list表示方法:
	1、直接给出列表:a b c 。。。;{a,b,c。。。}
			for i in a b c;do echo $i;done;
			for i in {a,b,c};do echo $i;done;
	2、整数列表:
		a、{m..n}:m到n内的正整数:
			{1..10}:正整数1到10;
		b、`seq m n l `,引用seq命令的结果,m为初始值、n为步进值、l为范围值:
			`seq 1 1 10`:正整数1到10;
	3、返回列表的命令的结果引用:$(command)
		$(ls /etc),/etc的所有文件组成的列表;
	4、通配符:
		for i in /etc/*:/etc下的所有文件组成的列表;
	5、变量引用:$@,$*

read:

从基本输入读取内容存储至变量中;
read:读取变量存储在REPLY中;
-p:提示语
-t:超时时间;
-a:存入到数组;

bash -n file:检查脚本语法;
bash -x file:逐步显示脚本执行;

练手:

1、脚本:CentOS 6中/etc/rc.d/rc3.d目录下分别由多个以k开头和以s开头的文件:分别读取每个文件名,
	以s开头的文件输出为‘文件名 start’,以k开头的文件输出为‘文件名 stop’
2、写一个脚本,使用ping命令探测172.16.100.0网段的主机的在线状态;

找茬:

1、F:/problems/scripts/3.sh;找出语法错误
2、while和until的特殊用法:死循环:
	while true;do
	until false;do
	这两个都是死循环,需要在内部定义循环退出条件;
3、while的特殊用法:循环读取文件的每一行进行处理;
	while read line;do
		action;
	done < file
	line并不是既定格式用词,可由用户自由命名,while会将文件的每一行赋值给变量line;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值