Shell脚本之流程控制(if、for、while)
if 判断
if语句的三种格式:
(1)if
(2)if else
(3)if elif else
语法格式如下:
#if 语法格式
if 条件
then
命令1...
命令2...
fi
#if else 语法格式
if 条件
then
命令1...
命令2...
else
命令1...
命令2...
fi
#if elif else语法格式
if 条件1
then
命令1...
命令2...
elif 条件2
then
命令1...
命令2...
else
命令1...
命令2...
fi
二元操作符
整数比较:
等 于: -eq
不 等于: -ne
大 于: -gt
大于等于: -ge
小 于: -lt
小于等于: -le
字符串比较:
等 于: =
不 等于: !=
for循环
for循环语法格式:
for 变量a in 变量1 变量2....变量n
do
命令1.....
命令2....
done
数字循环:
#格式1:
for ((i=1;i<=10;i++));
do
echo ${i};
done
#格式2:
for i in $(seq 1 10)
do
echo ${i};
done
#格式3:
for i in {1..10}
do
echo ${i};
done
字符串循环:
list="a b c d"
for i in ${list};
do
echo ${i};
done
while循环
while循环语法格式:
while 条件
do
执行命令(如果条件满足则执行该命令,不满足则结束)
done
栗子:
(1)计算从1累加到100的和
#!/bin/bash
sum=
i=
while [ $i -le ];
do
let sum=sum+i #let命令是bash中用于计算的工具 变量计算不需要带$
i=`expr $i + ` #expr是多功能计数器 注意要带$符号和注意空格 done
echo $sum
(2)while死循环
#!/bin/bash
while : # 这里:冒号代表死循环的意思
do
命令
done
until循环
条件为假的时候退出循环,和for、while相反,for、while是条件为真时继续执行循环。
until循环语法格式:
until 条件 #条件为假时执行下面循环
do
命令
done
栗子:
(1)计算从1累加到100的和
#!/bin/bash
sum=
i=
until [ $i -gt ]
do
let sum=sum+i
i=`expr $i + `
done
echo $sum
break:跳出循环
break 常用于循环语句中,跳出整个循环语句,直接结束所有循环。用法和java一样
continue:结束本次循环
continue 常用于循环语句中,结束本次循环,进行下一次循环。用法和java一样
exit:退出整个脚本
exit直接结束退出整个脚本,和java用法类似
Shell脚本之流程控制(if、for、while)的更多相关文章
- shell脚本之流程控制
shell脚本之流程控制 shell脚本之流程控制 条件语句 条件判断 循环语句for,while,until for循环 while循环 until循环 循环控制语句continue 循环控制语 ...
- shell脚本 3 流程控制
shell流程控制 流程控制是改变程序运行顺序的指令.linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case).下面我将通过例子介 ...
- Shell脚本学习 - 流程控制和函数
继续Shell的学习.上两篇是关于基本数据类型,基本语法以及运算符相关,这一篇是流程控制相关(if, for, while) 流程控制 if else 流程控制不可为空,如果else没有语句执行,就不 ...
- shell脚本(10)-流程控制while
一.while循环介绍 while循环与for一样,一般不知道循环次数使用for,不知道循环的次数时推荐使用while 二.while语法 while [ condition ] #条件为真才会循环, ...
- shell脚本(11)-流程控制case
一.case介绍 生产环境下,遇到要根据不同的状况执行不同的预案的情况,首先根据可能出现的情况写出对应预案,根据出现的情况来加载不同的预案 特点:根据给予的不同的代码块 二.case语法 case 变 ...
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...
- Shell命令和流程控制
Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...
- Shell脚本的条件控制和循环语句
条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...
- Shell命令和流程控制[linux常用命令的使用]
在shell脚本中使用三类命令: unix命令 概念:管道.重定向.backtick 流程控制 1 unix命令 echo "some text":在屏幕上输出信息 ls:文件列表 ...
随机推荐
- MySQL数据分析-(3)MySQL软件的安装(Windows版)
(一)MySQL下载 进入https://www.mysql.com/网页,找到DOWNLOADS然后点击进入页面,在页面中,我们选择社区版Community 点击,选择MySQL Community ...
- leveldb源码分析之Slice
转自:http://luodw.cc/2015/10/15/leveldb-02/ leveldb和redis这样的优秀开源框架都没有使用C++自带的字符串string,redis自己写了个sds,l ...
- 初次接触webpack
1.学习地址 中文文档 https://www.webpackjs.com/concepts/ webpack-dev-server配置说明 https://www.webpackjs.com/con ...
- 数据库隔离级别,每个级别会引发什么问题,mysql默认是哪个级别
1.脏读 脏读是指在一个事务处理过程里读取了另一个未提交的事务中的数据. 当一个事务正在多次修改某个数据,而在这个事务中这多次的修改都还未提交,这时一个并发的事务来访问该数据,就会造成两个事务得到的 ...
- JAVA基础知识|异常
一.基础知识 处理异常,java提供了一个优秀的解决方案:异常处理机制. java把异常当作对象来处理,所有的异常都是由Throwable继承而来,但在下一层立即分解为两个分支:Error和Excep ...
- Linux设备驱动程序 之 延迟执行
长延迟 有些驱动程序需要延迟比较长的时间,即长于一个时钟滴答: 忙等待 如果想把执行延迟若干个时钟滴答,或者对延迟的精度要求不高,最简单的实现方法就是一个监视jiffies计数器的循环:这种忙等待的实 ...
- 怎样在VMware虚拟机中使用安装并设置Ubuntu系统
1 2 3 4 5 6 7 分步阅读 Ubuntu 系统是一款优秀的.基于GNU/Linux 的平台的桌面系统. 当然,目前为止很多应用程序还完全不能允许运行在 Ubuntu 系统上,而且 Ubunt ...
- delphi10.3.1不支持.net 5
delphi10.3.1不支持.net 5 安装DELPHI的前提条件:WINDOWS必须安装有.NET. DELPHI安装程序在安装的时候会自动检测.NET是否已经安装好,如果发现没有,它会报错,并 ...
- ccf 201803-2 碰撞的小球(Python)
问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒. 当小球到达线 ...
- vue 项目 使用sass以及注意事项
vue 项目 使用sass以及注意事项 1,安装依赖: npm install node-sass --save-dev npm install sass-loader --save-dev 注: 通 ...