首页 > 系统相关 >shell补-循环案例-循环case

shell补-循环案例-循环case

时间:2023-12-15 11:11:53浏览次数:26  
标签:case myfunction shell sh 循环 localhost 录入 root bash

shell补-循环案例-循环case

case结构条件的语法格式;一般应用菜单的功能

case $变量名 in
"值1")
###如果变量的值1,则执行此
程序1
;;
"值2")
###如果变量的值2,则执行此
程序2
;;
###....省略其他分支
YES|yes|Yes)       #####此处的值,可以带些符号,比如|表示或者;也可以用[a-z]感觉可以正则
###
程序3
;;
*)
###如果变量的值不是以上的值,则执行此
程序4
;;;
esac
[root@localhost myfunction]# cat testfunction3.sh 
#!/bin/bash
[ -f /root/tmp/myfunction/myfunctiontest2.sh ] && source  /root/tmp/myfunction/myfunctiontest2.sh ||exit
if [ "$#" -ne 1 ]; then
	errmsg
	exit 1
fi
case "${1}" in
"start")	
	startRsync
	exit 0
;;
"stop")
	stopRsync
	exit 0
;;
"restart")

	restartRsync
	exit 0
;;
*)
	errmsg
;;
esac
[root@localhost myfunction]# bash testfunction3.sh rr r rq 
启停rsync脚本,你只能录入{start|stop|restart}
[root@localhost myfunction]# bash testfunction3.sh start
rsync服务启动成功
[root@localhost myfunction]# bash testfunction3.sh stop
rsync服务已停止
[root@localhost myfunction]# bash testfunction3.sh restart
stopvar:0--------------startvar :2
rsync服务已经重启成功
[root@localhost myfunction]# bash testfunction3.sh 3  3
启停rsync脚本,你只能录入{start|stop|restart}
#######################################################################
#!/bin/bash

read -p  "请录入一个字符" var

case  "${var}" in
 
 [a-Z] )
	echo “"你录入的是一个字母"
 ;;
 [0-9])
	echo "你录入的是一个数字"
 ;;
 *)
	echo "你录入的是一个符号"
esac
[root@localhost myfunction]# bash testcase.sh  
请录入一个字符1
你录入的是一个数字
[root@localhost myfunction]# bash testcase.sh  
请录入一个字符a
“你录入的是一个字母
[root@localhost myfunction]# bash testcase.sh  
请录入一个字符@
你录入的是一个符号
[root@localhost myfunction]# 

标签:case,myfunction,shell,sh,循环,localhost,录入,root,bash
From: https://www.cnblogs.com/xjianbing/p/17902947.html

相关文章

  • shell补-特殊玩法-生成随机字符串
    shell补-特殊玩法-生成随机字符串方法1:md5sum方法2:tr+/dev/urandom方法3:内置变量RANDOM;#方法1[root@localhostser]#opensslrand-base64108/54arQpCmQ12Q==[root@localhostser]##方法2必备[root@localhostser]#date+%N|md5sum###给日期加密;可以写其......
  • shell补-特殊玩法-批量修改文件
    shell补-特殊玩法-批量修改文件几个其他方法;感觉最简单的就是rename###方法3rename#rename找谁,替换为什么范围[root@localhostrandom]#ll总用量0-rw-r--r--.1rootroot011月1716:03bcauiftqdr.mrxu.html-rw-r--r--.1rootroot011月1716:03dkjoyp......
  • shell补-特殊玩法-批量修改密码
    shell补-特殊玩法-批量修改密码写一个脚本批量添加用户和随机密码root@localhostusr]#bashrandomadduser.sh更改用户mrrxu00001的密码。passwd:所有的身份验证令牌已经成功更新。更改用户mrrxu00002的密码。passwd:所有的身份验证令牌已经成功更新。更改用户mrr......
  • shell补-特殊玩法-安全防护案例
    shell补-特殊玩法-安全防护案例案例1:编写一个shell脚本解决类DDOS攻击的生成案例,请更加web日志或者系统网络连接数,监控当某个ip并非连接数,若短时间内PV达到100(阈值),即调用防火墙命令封掉对应的ip.防火墙命令iptables-IINPUT-sIP地址-jdrop查看被封的ip:iptables-nL......
  • shell补-特殊玩法-优化显示加入成功失败标识函数
    shell补-特殊玩法-优化显示加入成功失败标识函数加载函数文件/etc/init.d/functionsaction"******"/bin/true####正常显示action"******"/bin/false####失败显示[root@localhost~]#./etc/init.d/functions[root@localhost~]#action......
  • shell补-变量再见变量
    shell补-变量-变量变量的本质shell补-变量常见的环境变量环境变量含义备注LANGlanguage记录系统字符集语言zh_CN.UTF-8en_US.UTF-8localectl(centos7)修改文件/etc/sysconfig/i18n(centos6.x)PS1命令行格式PATH命令路径执行命令,系统会在PATH路径......
  • shell补-运算-数字运算
    shell补-运算-数字运算RANDOM[root@localhostsub_str]#manbash###/RANDOM.........RANDOMEachtimethisparameterisreferenced,arandomintegerbetween0and32767isgenerated.Thesequenceofrandomnumbersmaybeinitializedbyas......
  • Linux_3.2 Shell语法
    1循环语句1.1for…in…do…done命令格式:forvarinval1val2val3#类似于枚举do语句1语句2...done示例1,输出a2cc,每个元素一行:foriina2ccdoecho$idone示例2,输出当前路径下的所有文件名,每个文件名一行:forfilein`ls`#$(ls)d......
  • 九、条件控制与循环
    九、条件控制与循环9.1条件判断​ 有的时候在执行任务的时候需要对不同的情况做判断,以此来决定是否执行某些任务。什么情况下需要使用条件判断?判断主机的硬件资源,如CPU、内存、磁盘空间是否满足要求,如满足再执行task捕获一个命令的输出,根据命令输出结果的不同触发不同的task......
  • # yyds干货盘点 # 我设置for循环后里面因为内嵌函数,然后里面加continue没用,提示不在循
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【黑科技·鼓包】问了一个Python函数处理的问题,一起来看看吧。代码如下:代码还是有点长的。二、实现过程这里【隔壁......