shell编程3 ---流程控制语句
shell编程流程控制语句
一、if流程控制语句
1、单分支if条件判断语句
if [ 条件判断式 ];then 或者 if[ 条件判断式 ]
程序 then
fi 程序
fi
2、多分支if条件判断语句
if [ 条件判断式 ] 或者 if [ 条件判断式1 ]
then then
条件成功时执行的程序 当条件一成立时执行程序一
else elif [ 条件判断式2 ]
条件不成功时执行的程序 then
fi 当条件二成立时程序二
...省略更多条件
else
所有条件都不成立时执行此程序
fi
二、case语句
1、与if elif else 语句一样都是多分支判断语句,只不过和其不一样之处在于case只能判断一种条件关系而if可以判断多种条件关系。
2、case $变量名 in
“值1”)
如果变量值等于值1需要执行的程序
;;
“值2”)
如果变量值等于值2需要执行的程序
;;
省略其他值
*)
如果变量值什么值都不等于需要执行的程序
;;
esac
三、for循环变量
1、语法1 2、语法2
for 变量 in 值1 值2 ... for ((初始值;循环控制条件;变量变化))
do do
执行变量的程序 执行变量的程序
done done
四、while循环与until循环
1、while语法 2、until语法(与while相反。只要不成立就会一直执行下去)
while [ 条件判断式 ] until [ 条件判断式 ]
do do
执行程序 执行程序
done done
补充:a=1
echo $a | sed 's/^[0-9]*$//g' (如果原数据为数字则替换为空,用于判断原数据是否为数字)
shell编程3 ---流程控制语句的更多相关文章
- 自动化运维:(2)Shell 编程的流程控制
一. if语句 1.单分支if语句——单一条件,只有一个输出 #!/bin/bash # 单if语句的使用场景 if [ "$1" == "nan" ] the ...
- shell脚本之流程控制语句
一.分支控制语句 1.if .. fi条件 if condition; then action fi 2.if .. else .. fi条件 if condition;then action; el ...
- shell编程之流程控制
-d 判断该文件是否存在,并且是否为目录文件 -e 判断该文件是否存在 -f 判断该文件是否存在,并且是否为普通文件 形式 [ -e /home/cao/test.txt ] -r 文件 判断该文 ...
- Linux学习笔记(18) Shell编程之流程控制
1. if语句 (1) 单分支if条件语句 格式为: # 注意条件判断式两端的空格if [ 条件判断式 ];then 程序员 fi 或者 if[ 条件判断式 ] then 程序 fi 例:判断分区使用 ...
- shell入门之流程控制语句 分类: 学习笔记 linux ubuntu 2015-07-10 16:38 89人阅读 评论(0) 收藏
1.case 脚本: #!/bin/bash #a test about case case $1 in "lenve") echo "input lenve" ...
- shell入门之流程控制语句
1.case 脚本: #!/bin/bash #a test about case case $1 in "lenve") echo "input lenve" ...
- shell编程 之 流程控制(条件语句和循环语句)
1 if ...else... 基本格式: if condition then commend else commend fi 当然也可以写到一行,用[ ]表明边界,用:表示分行.比如: if [ $ ...
- Linux Shell 流程控制语句
* 本文主要介绍一些Linux Shell 常用的流程控制语句* 1. if 条件语句:if-then/if-elif-fi/if- else-fi if [条件判断逻辑1];then command ...
- Shell编程笔记
Shell编程笔记与Windows下熟悉的批处理类似,也可以将一些重复性的命令操作写成一个脚本方便处理. 修改别人的脚本,运行后遇到个问题 setenv: command not found 查证 ...
随机推荐
- 【转】 从输入 URL 到页面加载完成的过程中都发生了什么事情?
该问题总结 一. 往浏览器输入URL后给你一个页面,你天天在使用的东西,学过计算机网络的知道是怎么回事,就DNS解析然后页面的回馈,不过要讲好还是有难度. 之前fex团队的nwind专门写过这个问题的 ...
- 【DB2】新建用户
1.创建用户(切换到root用户下操作) useradd -g users -d /home/qinys -s /bin/bash -m qinys 2.修改密码 passwd qinys 备注:此处 ...
- 将NSArray反向排序
NSArray * array = [NSArray arrayWithObjects:", nil]; NSArray * reverseArray = [[array reverseOb ...
- C#开发--FTP操作方法管理
1.整理简化了下C#的ftp操作,方便使用 1.支持创建多级目录 2.批量删除 3.整个目录上传 4.整个目录删除 5.整个目录下载 2.调用方法展示, var ftp ...
- Socket 异步通信示例
这个项目是一个控制台应用程序: 服务器端: using System; using System.Net; using System.Net.Sockets; using System.Text; u ...
- sql CHARINDEX() 与 PATINDEX() LEN() substring() COLLATE RAISERROR
CHARINDEX() 在一个表达式中搜索另一个表达式并返回其起始位置(如果找到). CHARINDEX ( expressionToFind , expressionToSearch [ , st ...
- Prometheus+Grafana搭建监控系统
之前在业务中遇到服务器负载过高问题,由于没有监控,一直没发现,直到业务方反馈网站打开速度慢,才发现问题.这样显得开发很被动.所以是时候搭建一套监控系统了. 由于是业余时间自己捯饬,所以神马业务层面的监 ...
- Matlab典型论坛
Matlab典型论坛 http://www.ilovematlab.cn/forum.php?tid=271705&goto=lastpost
- xmlUtil 解析 创建
http://yangzi09150915.blog.163.com/blog/static/32953487201072911410398/ package com.aibi.cmdc.webSer ...
- saltstack之服务管理
1.启动服务 /srv/salt/service/nfs.sls rpcbind: service.running: - enable: True #开机自动启动 # - enable: False ...