福建省建设厅网站信用评分,linux主网站设计,家居定制公司股票,国家企用信用信息公示系#x1f468;#x1f393;博主简介 #x1f3c5;云计算领域优质创作者 #x1f3c5;华为云开发者社区专家博主 #x1f3c5;阿里云开发者社区专家博主 #x1f48a;交流社区#xff1a;运维交流社区 欢迎大家的加入#xff01; #x1f40b; 希望大家多多支… 博主简介 云计算领域优质创作者 华为云开发者社区专家博主 阿里云开发者社区专家博主 交流社区运维交流社区 欢迎大家的加入 希望大家多多支持我们一起进步 如果文章对你有帮助的话欢迎 点赞 评论 收藏 ⭐️ 加关注 文章目录 if 判断 if 判断格式 if 判断实例 单条件判断实例判断是否为整数 多条件判断实例成绩及格否 for 循环 for 循环格式 for 循环实例 需求1打印10以内的偶数--能被2整除除2余数为0 需求2循环创建文件cs{1..100} 需求3从变量中取遍历的值 需求4从命令中取值 需求5for循环自增自减 需求5.1批量创建cs1-cs10用户 需求5.2输出数字 a 自增、 a自增、 a自增、b自减 需求5.3循环20次zabbix调用 需求6批量创建用户密码默认为123456 while 循环 while 循环格式 while 循环实例 需求1计算1到100正整数的和 需求2批量创建用户密码默认为123456 需求3提示用户输入字符如果是小写就把字母全部变为大写如果是quit则退出脚本 需求4无限循环执行zabbix_get调用命令 case 循环判断 case 循环判断格式 case 循环判断实例 nginx服务启停脚本函数 case 相关文章 if 判断 if 判断格式
#单条件判断
if 条件测试;then执行代码
fiif 条件测试;then执行代码
eles执行代码
fi#多条件判断
if 条件测试;then执行代码
elif 条件测试;then执行代码
eles执行代码
fiif 判断实例 单条件判断实例判断是否为整数
#!/bin/bashread -p please input a number: numexpr 10 $num /dev/null
if [ $? -eq 0 ];thenecho ${num}是整数
elseecho ${num}不是整数
fi多条件判断实例成绩及格否
对输入成绩做判断
如果成绩小于60那么打印不及格
如果60成绩80那么打印及格
如果80成绩90;那么打印良好
如果90成绩100;那么打印优秀
否则请输入0-100的整数
结尾#!/bin/bashread -p please input is results: results
expr 10 $results /dev/null
if [ $? -ne 0 ];thenecho ${results}不是合法整数exit 1
fi
if [ ${results} -lt 60 ];thenecho 不及格
elif [ ${results} -ge 60 ] [ ${results} -lt 80 ];thenecho 及格
elif [ ${results} -ge 80 ] [ ${results} -lt 90 ];thenecho 良好
elif [ ${results} -ge 90 ] [ ${results} -le 100 ];thenecho 优秀
elseecho 请输入0-100之间合法的整数,您输入的是${results}
fifor 循环 for 循环格式
for 变量 in 取值列表;do执行代码
donefor 变量 in 取值列表
do执行代码
donefor (( i1;i20;i ));do执行代码表示循环20次执行代码
done取值列表中的值都将被历遍 for 循环实例 需求1打印10以内的偶数–能被2整除除2余数为0
#!/bin/bash#{起始数字..终止数字..步长} 默认步长为1
for i in {2..10..2};doecho $i
donecontinue 跳过当前循环 break 终止当前循环 exit 退出脚本同时可以指定退出时的状态码 seq [起始位置不指定默认是1] 终止位置 -s 指定分隔符 -w 补齐相同宽度 需求2循环创建文件cs{1…100}
#!/bin/bash#获取脚本执行的路径
DIR$(cd $(dirname $0) pwd )text$DIR/for[ ! -d $text ] mkdir $textfor I in {1..100};dotouch ${text}/cs$I
done#其实直接用touch也可以创建这里只为了演示
#touch cs{1..100}
#会在当前目录创建cs{1..100}文件需求3从变量中取遍历的值
#!/bin/bashListfile1 file2 file3
for I in $List;doecho 当前文件为 ${I}
done需求4从命令中取值
#!/bin/bashfor I in $(cat /etc/passwd)
doecho $I
done需求5for循环自增自减 需求5.1批量创建cs1-cs10用户
#!/bin/bashfor (( i1;i10;i ));douseradd cs_$i
done如果需要删除这些用户可在脚本中把useradd改为userdel -r即可 需求5.2输出数字 a 自增、 a自增、 a自增、b自减
#!/bin/bashfor (( a1,b9;a10;a,b-- ));doecho num is $a $b
donea的初始值为1b的初始值为9 a在前所以写a最大不能10 a每次加1直至加到10b每次-1直至a停止。 需求5.3循环20次zabbix调用
#!/bin/bashfor (( i1;i20;i ));docs$(zabbix_get -s 172.16.10.1 -k cs)echo 调用$i次调用结果为$csecho ------------------------------------------------------------------------
done需求6批量创建用户密码默认为123456
#!/bin/bash#获取脚本执行的路径
DIR$(cd $(dirname $0) pwd )#创建一个用户组
groupadd mailgroup 2/dev/nullfor i in $(cat $DIR/a.txt);douseradd -g mailgroup -s /sbin/nologin $i 2/dev/nullecho 123456 | passwd --stdin $i
donea.txt 中名字可以随便起; while 循环 while 循环格式
while [条件测试];do执行代码
donewhile [条件测试]
do执行代码
donewhile true;do执行代码无限循环此命令每次循环停留两秒sleep 2
done条件测试比如$i -le 5 当条件成立时执行循环不成立结束循环。 如果while中的条件永远成立会一直循环成为死循环。 while 循环实例 需求1计算1到100正整数的和
#!/bin/bashdeclare -i I1declare -i SUM0while [ $I -le 100 ]; dolet SUM$Ilet I
doneecho $SUM在执行脚本时加个 -x 可查看执行过程 需求2批量创建用户密码默认为123456
#!/bin/bash#获取脚本执行的路径
DIR$(cd $(dirname $0) pwd )#创建一个用户组
groupadd mailgroup 2/dev/nullwhile read username; douseradd -g mailgroup -s /sbin/nologin $username 2/dev/nullecho 123456 | passwd --stdin $username
done $DIR/username.txtusername.txt
lcy
cs
abc
abb
abd
abe
abf批量删除用户
#!/bin/bash#获取脚本执行的路径
DIR$(cd $(dirname $0) pwd )#创建一个用户组
groupadd mailgroup 2/dev/nullcat $DIR/username.txt | while read username; douserdel -r $username
done需求3提示用户输入字符如果是小写就把字母全部变为大写如果是quit则退出脚本
#!/bin/bash#如果输入的不是quit则把小写字母全部换成大写字母如果输入的是quit则退出循环否则会一直循环
read -p Please enter content SCRIPTwhile [ $SCRIPT ! quit ]; doecho $SCRIPT | tr a-z A-Zread -p Please enter content SCRIPT
done字母写的小写全部会替换为大写数字和其他字符不会被替换 需求4无限循环执行zabbix_get调用命令
#!/bin/bashwhile true;docs$(zabbix_get -s 172.16.10.1 -k cs)echo 结果为$csecho ----------------------------------------sleep 2
donecase 循环判断 case 循环判断格式
case 变量 in条件或值1执行代码
;;条件或值2)执行代码
;;条件或值3执行代码
;;*执行代码
esaccase 循环判断实例 nginx服务启停脚本函数 case
#!/bin/bashngstart (){/usr/local/nginx/sbin/nginx
}ngstop (){/usr/local/nginx/sbin/nginx -s stop
}ngrestart (){/usr/local/nginx/sbin/nginx -s reload
}ngstatus (){/usr/local/nginx/sbin/nginx -s status
}#nginx服务器起停的脚本case $1 instart)echo 启动nginx服务ngstart
;;stop)echo 关闭nginx服务ngstop
;;restart)echo 重启nginx服务
# $0 stop
# $0 startngrestart
;;status)echo 查看nginx服务状态ngstatus
;;*) echo USage: /etc/init.d/nginx {start|stop|restart}
esac推荐一个使用case写的启动脚本包含启动停止及重启监测状态linux启动、关闭、重启jar包shell脚本 相关文章
文章名文章地址【Linux】 shell脚本的创建及使用 《入门到实践》详解[⭐建议收藏⭐]https://liucy.blog.csdn.net/article/details/130111812【Linux】Shell脚本之函数的操作实战详解[⭐建议收藏⭐]https://liucy.blog.csdn.net/article/details/130387377【Linux】Shell脚本之流程控制语句 if判断、for循环、while循环、case循环判断 实战详解[⭐建议收藏⭐]https://liucy.blog.csdn.net/article/details/130387523