ca结构条件句相当于多分支if条件语句,但是它比这些条件句看起来更规范工整,常被用于实现系统服务脚本等应用场景中。
ca语句的语法结构:
ca "变量" in 值1) 指令1 ;; 值2) 指令2 ;; 值3) 指令3 ;; *) 指令4 esac
[root@centos6-kvm3 scripts]# cat 09-03.sh#!/bin/bashcat <<eof1.install lnmp2.install lamp3.exiteofread -p "请输入一个数字{1|2|3}:" numexpr $num + 2 &>/dev/nullif [ $? -ne 0 ]then echo "usage:$0{1|2|3}" exit 1fica $num in 1) echo "install lnmp" ;; 2) echo "install lamp" ;; 3) echo "exit" exit ;; *) echo "usage:$0{1|2|3}" exit 1esac
当用户输入对应的数字选择水果的时候,告诉他选择的水果是什么,并给水果单词加上一种颜色(随意),要求用ca语句实现。
内容的颜色用数字表示,范围为30-37,每个数字代表一种颜色。echo -e "3[30m 黑色字oldboy trainning 3[0m" #<==30m表示黑色字。echo -e "3[31m 红色字oldboy trainning 3[0m" #<==31m表示红色字。echo -e "3[32m 绿色字oldboy trainning 3[0m" #<==32m表示绿色字。echo -e "3[33m 棕色字oldboy trainning 3[0m" #<==33m表示棕色字(brown),和黄色字相近。echo -e "3[34m 蓝色字oldboy trainning 3[0m" #<==34m表示蓝色字。echo -e "3[35m 洋红字oldboy trainning 3[0m" #<==35m表示洋红色字(magenta),和紫色字相近。echo -e "3[36m 蓝绿色oldboy trainning 3[0m" #<==36m表示蓝绿色字(cyan),和浅蓝色字相近。echo -e "3[37m 白色字oldboy trainning 3[0m" #<==37m表示白色字。
[root@centos6-kvm3 scripts]# cat 09-04.sh#!/bin/bashcat <<eof1.apple2.pear3.banana4.cherryeofread -p "请输入一个数字{1|2|3|4}:" numexpr $num + 2 &>/dev/nullif [ $? -ne 0 ]then echo "usage:$0 {1|2|3|4}" exit 1fica $num in 1) echo -e "3[31m apple 3[0m" ;; 2) echo -e "3[32m pear 3[0m" ;; 3) echo -e "3[33m banana 3[0m" ;; 4) echo -e "3[34m cherry 3[0m" ;; *) echo "usage:$0 {1|2|3|4}" exitesac[root@centos6-kvm3 scripts]#
颜色函数:[root@centos6-kvm3 scripts]# cat color.sh#!/bin/bashred="3[31m"green="3[32m"yellow="3[33m"blue="3[34m"tail="3[0m"color(){ca $1 in red) echo -e "${red}$2${tail}" ;; green) 中国精神作文echo -e "${green}$2${tail}" ;; yellow) echo -e "${yellow}$2${tail}" ;; blue) echo -e "${blue}$2${tail}" ;; *) echo "usage:$0 plea input right content"esac}color $*[root@centos6-kvm3 scripts]# 功能调用颜色函数:[root@centos6-kvm3 scripts]# cat 09-04.sh #!/bin/bash. ./color.shcat <<eof1.apple2.pear3.banana4.cherryeofread -p "请输入一个数字{1|2|3|4}:" numexpr $num + 2 &>/dev/nullif [ $? -ne 0 ]then echo "usage:$0 {1|2|3|4}" exit 1fica $num in 1) color red apple ;; 2) color green pear ;; 3) color yellow banana ;; 4) color blue cheryy ;; *) echo "usage:$0 {1|2|3|4}" exitesac[root@centos6-kvm3 scripts]#
字体背景颜色
字的背景颜色对应的数字范围为40-47,代码如下。echo -e "3[40;37m 黑底白字oldboy3[0m" #<==40m表示黑色背景。echo -e "3[41;37m 红底白字oldboy3[0m" #<==41m表示红色背景。echo -e "3[42;37m 绿底白字oldboy3[0m" #<==42m表示绿色背景。echo -e "3[43;37m 棕底白字oldboy3[0m" #<==43m表示棕色背景(brown),和黄色背景相近。echo -e "3[44;37m 蓝底白字oldboy3[0m" #<==44m表示蓝色背景。echo -e "3[45;37m 洋红底白字oldboy3[0m" #<==45m表示洋红色背景(magenta),和紫色背景相近。echo -e "3[46;37m蓝绿底白字oldboy3[0m" #<==46m表示蓝绿色背景(cyan),和浅蓝色背景相近。echo -e "3[47;30m 白底黑字oldboy3[0m" #<==47m表示白色背景。
[root@centos6-kvm3 scripts]# cat rsync.sh#!/bi法国队阵容n/bashca $1 in start) rsync --daemon if [ $? -eq 0 ] then echo "rsync $1 ok" el echo "rsync $1 fail" fi ;; stop) killall rsync if [ $? -eq 0 ] then echo "rsync $1 ok" el echo "rsync $1 fail" fi 语文阅读;; restart) killall rsync && sleep 1 && rsync --daemon if [ $? -eq 0 ] then echo "rsync $1 ok" el echo "rsync $1 fail" fi ;; *) echo "usage:$0 {start|stop|restart}"esac
查看进程:lsof -i:873
rsync启动高级脚本:
cp rsyncd.sh /etc/init.d/rsyncd
chkconfig –list rsyncd
chkconfig –add rsyncd
chmod +x /etc/init.d/rsyncd
[root@centos6-kvm3 scripts]# cat rsyncd.sh # chkconfig: 2345 20 80# description: rsync start stop#!/bin/bash. /etc/init.d/functionsstart(){ rsync --daemon retval=$? if [ $retval -eq 0 ] then action "rsync start ok" /bin/true return $retval el action "rsync start fail" /bin/fal return $retval fi}stop(){ killall rsync &>/dev/null retval=$? if [ $retval -eq 0 ] then action "rsync stop ok" /bin/true return $retval el action "rsync stop fail" /bin/fal return $retval fi}ca $1 in start) start retval=$? ;; stop) stop retval=$? ;; restart) stop sleep 2 start retval=$? 鬼节由来;; *) echo "usage:$0 {start|stop|restart}"esacexit $retval
转自:/d/file/titlepic/12799174.html
本文发布于:2023-04-03 22:19:34,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/06986f3e9f3273882ac952641117f25e.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:shell脚本case结构条件句应用实践.doc
本文 PDF 下载地址:shell脚本case结构条件句应用实践.pdf
留言与评论(共有 0 条评论) |