首页 > 作文

shell脚本case结构条件句应用实践

更新时间:2023-04-03 22:19:36 阅读: 评论:0

九、ca结构条件句应用实践

(一)ca语法结构

图书馆工作总结

ca结构条件句相当于多分支if条件语句,但是它比这些条件句看起来更规范工整,常被用于实现系统服务脚本等应用场景中。

ca语句的语法结构:

ca "变量" in      值1)          指令1          ;;       值2)          指令2          ;;       值3)          指令3          ;;        *)          指令4 esac

(二)实例,ca应用:

[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表示白色字。

1、基础脚本1:

[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]# 

2、高级脚本2(带颜色):

颜色函数:[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表示白色背景。

(四)rsync启动基本脚本实例:

[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

(五)rsync启动脚本之高阶

[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 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图