Linux Shell脚本编程case条件语句
1,判断一个数字是否则在1,2,3之中.
#!/bin/bash
read -p "pls input a number:" n
case "$n" in
)
echo "变量是1"
;;
)
echo "变量是2"
;;
)
echo "变量是3"
;;
*)
echo "pls input a number between 1 and 3"
exit;
esac
2,多级if语句改写
#!/bin/bash
read -p "pls input a number:" n
if [ $n -eq ]; then
echo "$n是变量1"
elif [ $n -eq ]; then
echo "$n是变量2"
elif [ $n -eq ]; then
echo "$n是变量3"
else
echo "pls input a number between 1 and 3"
fi
3,if..else嵌套,实现
#!/bin/bash
read -p "pls input a number:" n
if [ $n -eq ]; then
echo
else
if [ $n -eq ]; then
echo
elif [ $n -eq ]; then
echo
else
echo "pls input a number [1-3]"
fi
fi
4,判断 分数等级
#!/bin/bash read -p "pls input score to test level:" score if [ $score -ge ]; then
echo "优秀"
elif [ $score -ge ]; then
echo "良好"
elif [ $score -ge ]; then
echo "中等"
elif [ $score -ge ]; then
echo "及格"
else
echo "不及格"
fi
5,给文字加颜色
#!/bin/bash
RED_COLOR='\e[1;31m'
GREEN_COLOR='\e[1;32m'
YELLOW_COLOR='\e[1;33m'
BLUE_COLOR='\e[1;34m'
RESET_COLOR='\e[0m' echo '
, 悟空
, 八戒
, 唐僧
, 白龙马
'
read -p "pls input a number:" n case $n in
)
echo -e "${RED_COLOR}悟空${RESET_COLOR}"
;;
)
echo -e "${GREEN_COLOR}八戒${RESET_COLOR}"
;;
)
echo -e "${YELLOW_COLOR}唐僧${RESET_COLOR}"
;;
)
echo -e "${BLUE_COLOR}白龙马${RESET_COLOR}"
;;
*)
echo "you need input a number in {1|2|3|4}"
esac
另一种写法:
#!/bin/bash
RED_COLOR='\e[1;31m'
GREEN_COLOR='\e[1;32m'
YELLOW_COLOR='\e[1;33m'
BLUE_COLOR='\e[1;34m'
RESET_COLOR='\e[0m' function menu(){
cat <<END
, 悟空
, 八戒
, 唐僧
, 白龙马
END
} function select_type(){
read -p "pls input a number:" n
case $n in
)
echo -e "${RED_COLOR}悟空${RESET_COLOR}"
;;
)
echo -e "${GREEN_COLOR}八戒${RESET_COLOR}"
;;
)
echo -e "${YELLOW_COLOR}唐僧${RESET_COLOR}"
;;
)
echo -e "${BLUE_COLOR}白龙马${RESET_COLOR}"
;;
*)
echo "you need input a number in {1|2|3|4}"
esac
} function main(){
menu
select_type
} main
读取命令行参数,给内容设置颜色
#!/bin/bash
RED_COLOR='\e[1;31m'
GREEN_COLOR='\e[1;32m'
YELLOW_COLOR='\e[1;33m'
BLUE_COLOR='\e[1;34m'
RESET_COLOR='\e[0m' if [ $# -ne ]; then
echo "Usage $0 input {red|green|yellow|blue}"
exit
fi case $ in
red)
echo -e "${RED_COLOR}$1${RESET_COLOR}"
;;
green)
echo -e "${GREEN_COLOR}$1${RESET_COLOR}"
;;
yellow)
echo -e "${YELLOW_COLOR}$1${RESET_COLOR}"
;;
blue)
echo -e "${BLUE_COLOR}$1${RESET_COLOR}"
;;
*)
echo "usage $0 input {red|green|yellow|blue}"
exit
esac
修改成函数调用方式
#!/bin/bash
function toColor(){
RED_COLOR='\e[1;31m'
GREEN_COLOR='\e[1;32m'
YELLOW_COLOR='\e[1;33m'
BLUE_COLOR='\e[1;34m'
RESET_COLOR='\e[0m' if [ $# -ne ]; then
echo "Usage $0 input {red|green|yellow|blue}"
exit
fi case $ in
red)
echo -e "${RED_COLOR}$1${RESET_COLOR}"
;;
green)
echo -e "${GREEN_COLOR}$1${RESET_COLOR}"
;;
yellow)
echo -e "${YELLOW_COLOR}$1${RESET_COLOR}"
;;
blue)
echo -e "${BLUE_COLOR}$1${RESET_COLOR}"
;;
*)
echo "usage $0 input {red|green|yellow|blue}"
exit
esac
} function main(){
toColor $ $
} main $*
Linux Shell脚本编程case条件语句的更多相关文章
- Linux Shell脚本编程while语句
Linux Shell脚本编程while语句案例 1,每隔3秒,打印一次系统负载 #!/bin/bash while truedo uptime sleep 3done 2,把监控结果保存 ...
- Linux shell脚本编程(三)
Linux shell脚本编程 流程控制: 循环语句:for,while,until while循环: while CONDITION; do 循环体 done 进入条件:当CONDITION为“真” ...
- Linux shell脚本编程(二)
Linux shell脚本编程(二) 练习:求100以内所有偶数之和; 使用至少三种方法实现; 示例1: #!/bin/bash # declare -i sum=0 #声明一个变量求和,初始值为0 ...
- Linux shell脚本编程(一)
Linux shell脚本编程: 守护进程,服务进程:启动?开机时自动启动: 交互式进程:shell应用程序 广义:GUI,CLI GUI: CLI: 词法分析:命令,选项,参数 内建命令: 外部命令 ...
- SHELL脚本编程的条件测试
SHELL脚本编程的条件测试 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.条件测试概述 判断某需求是否满足,需要由测试机制来实现 专用的测试表达式需要由测试命令辅助完成测试过 ...
- Linux Shell脚本编程--Linux特殊符号大全
Linux Shell脚本编程--Linux特殊符号大全 linux_shell 特殊符号的介绍 2011
- Linux Shell脚本编程-基础1
概述: shell脚本在Linux系统管理员的运维工作中非常重要.shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求.本篇将从编程基础 ...
- 【学习】Linux Shell脚本编程
1.脚本的组成和执行 Linux shell脚本的结构并不复杂,其主要由变量.内部命令以及shell的语法结构和一些函数.其他命令行的程序等组成,以下是一个简单的shell脚本. #!/bin/bas ...
- [linux] shell脚本编程-xunsearch安装脚本学习
安装脚本setup.sh #!/bin/sh # FULL fast install/upgrade script # See help message via `--help' # $Id$ # s ...
随机推荐
- 前端vue框架 父组件与子组件之间的相互调用
子组件调用父组件东西: 1.在父组件与子组件契合的标签的的template模板中绑定 v-bind:自定义一个名字=“要调用的名字” 2.在子组件的script中props:["自定义的名字 ...
- 响应式网站设计(Responsive Web design)
页面的设计与开发应当根据用户行为以及设备环境(系统平台.屏幕尺寸.屏幕定向等)进行相应的响应和调整.具体的实践方式由多方面组成,包括弹性网格和布局.图片.CSS media query的使用等.无论用 ...
- navicat连接linux系统中mysql-错误:10038
输入 命令 netstat -anp(查看所有的进程和端口使用情况) (注:Local Address一列中: 0.0.0.0 表示监听本地所有ip地址,其他电脑是可以访问的,并且修改ip不受影响. ...
- WebRTC学习之ICE深入理解
ICE(交互式连接建立---Interactive Connectivity Establishment),是一种标准穿透协议.它利用STUN和TURN服务器来帮助端点建立连接.下图显示了ICE的基本 ...
- spring框架学习笔记1:搭建测试
Spring框架介绍: Spring框架涵盖了web.service.dao三层,本身是一个存放对象的容器 形象来说:Spring是项目中对象管家 Spring框架的两大核心思想:控制反转(IOC). ...
- MySQL-Cluster 和主从(Master,Slave)搭建总结
双主互备,主从 什么是双主 MultiSource 多源复制 原理及流程图 主要步骤 1,在 Master Server 上开启 bin log 日志 和 设置 server-id :(在my.cn ...
- HDFS环境搭建(单节点配置)
[参考文章]:hadoop集群搭建(hdfs) 1. Hadoop下载 官网下载地址: https://hadoop.apache.org/releases.html,进入官网根据自己需要下载具体的安 ...
- Maven - 实例-5-依赖冲突
避免依赖冲突的原则 如果项目中的pom.xml没有指定依赖的信息,而是通过继承来引用依赖,则很有可能发生继承同一个依赖的多个版本,从而产生依赖冲突. Maven通过如下两个原则来避免依赖冲突: 1- ...
- Spring Boot发布将jar包转为war包。
Spring Boot是支持发布jar包和war的,但它推荐的是使用jar形式发布.使用jar包比较方便,但如果是频繁修改更新的项目,需要打补丁包,那这么大的jar包上传都是问题.所以,jar包不一定 ...
- LeetCode--No.015 3Sum
15. 3Sum Total Accepted: 131800 Total Submissions: 675028 Difficulty: Medium Given an array S of n i ...