Shell for、while循环
先顺带说下 if
1. if 条件;then else fi
如果else分支没有执行语句,可以不写。
2. if 条件;then elif 条件;then else fi
#!/bin/bash ## 定义变量,并赋值
a=
b= ## 判断a,b变量的关系
if [ $a -eq $b ];then
echo "a 等于 b"
elif [ $a -gt $b ];then
echo "a 大于 b"
else
echo "a 小于 b"
fi
结果:
for 循环:
语法1:
for 变量 in 列表/数组 ##已空格 分隔符
do
command
done
语法2:
for ((变量;条件;条件))
do
command
done
#!/bin/bash ## for 语法1,读取每个单词 ,注意不能使用引号(加上引号,就会默认是一个单词)
for str in This is kimbo speaking
do
echo "The str is : ${str}"
done ## for 语法2,注意使用两个小括号
for (( i=1; i<=3; i++ ))
do
echo "The i is: $i"
done ## for 语法3
for j in `seq 1 3`
do
echo "The j is: $j"
done ## for 语法4
for k in {1..3}
do
echo "The k is: $k"
done ## for 循环数组
##定义数组
db_arr=(0 1 2 3 4 5 6 7 8 9 a b c d e f)
for var_db in ${db_arr[@]} ##循环取数据内容,默认从0开始
do
echo "var_db is ${var_db}" ##打印变量
done
for 循环
结果:
while 循环:
语法1:
while [条件]
do
command
done
语法2:
while (())
do
command
done
#!/bin/bash ## 定义变量
a=
b= ## while 语法1:
while [ $a -le $b ]
do
echo "语法1:The a is :$a"
a=`expr $a + `
done ## while 语法2:
while (( $a >= $b ))
do
echo "语法2:The a is :$a"
a=`expr $a - `
done
循环控制语句:
break : 不执行当前循环体内break下面的语句,从当前循环退出
continue : 不执行当前循环体内continue下面的语句,从循环开头 继续执行
###########while 逐行读取文件内容
方法1:
cat ${file_name} | while read line
do
echo $line
done
方法2: 此方法可以获取循环内的变量,方法1不行。
while read line
do
echo $line
done <${file_name}
小例子:用于日常补数据,非常实用
#!/bin/bash ## 参数校验
if [ $# -ne ];then
echo "Please Enter two parameter,try again."
echo "example: 20170201 20170207"
exit
fi ## 定义目录
dir=/home/test ## 定义变量,开始日期、结束日期
s_date=`date -d "$1" +%Y%m%d`
e_date=`date -d "$2" +%Y%m%d` ## 打印变量
echo "循环开始日期 is ${s_date}--->"
echo "循环结束日期 is ${e_date}--->" ## while 循环
while (( ${s_date} <= ${e_date} ))
do echo "当前运行日期:${s_date}"
## 运行补数脚本
##sh ${dir}/kimbo_test.sh ${s_date} >>$dir/run.log ## 运行日期加1天
s_date=`date -d "+1 day ${s_date}" +%Y%m%d` done
结果:
Shell for、while循环的更多相关文章
- shell中的循环
shell中的循环 for循环 类似于C语言的步长控制 例如: ;i<=;i++)); ); done 将1到10,依次乘以4,然后打印出来. 这里顺便提一下,shell里面表达式的计算,可以有 ...
- shell中for循环
shell中for循环总结 最常用的就是遍历操作某一类文件,比如批量建索引. for i in `ls` do samtools faidx $i done 注意:for末尾不需要冒号(:),循环的代 ...
- shell中for循环总结
关于shell中的for循环用法很多,一直想总结一下,今天网上看到上一篇关于for循环用法的总结,感觉很全面,所以就转过来研究研究,嘿嘿... 1. for((i=1;i<=10;i++));d ...
- shell脚本学习-循环
跟着RUNOOB网站的教程学习的笔记 for循环 与其他编程语言类似,shell支持for循环. for循环一般格式为: for var in item1 item2 ... itemN do com ...
- 04 shell编程之循环语句
Shell编程之循环语句 学习目标: 掌握for循环语句编程 掌握while循环语句编程 目录结构: For循环语句 l 读取不同的变量值,以逐个执行同一组命令 l For语句结构 for 变量名 ...
- shell的for循环
与其他编程语言类似,Shell支持for循环. for循环一般格式为: for 变量 in 列表 do command1 command2 ... commandN done 列表是一组值(数字.字符 ...
- Shell中的循环语句实例
1.for循环语句实例1.1 最基本的for循环 #!/bin/bash for x in one two three four do echo number $x done 注:" ...
- shell编程之循环语句for / while / until
shell编程之循环语句与函数 一.条件测试 二.循环语句 ① for循环语句结构(遍历) 示例1 示例2 ② while循环语句结构(迭代) 示例1 示例2 ③ until 循环语句结构 示例1 一 ...
- shell脚本之循环语句与函数
shell脚本之循环语句与函数 echo的用法: echo -n #表示不换行输出 echo -e #输出转义字符,将转义后的内容输出到屏幕上 转义字符: \n :换行,被输出的字符从"\n ...
- Shell编程之循环语句与echo的用法
Shell编程之循环语句与echo的用法 目录 Shell编程之循环语句与echo的用法 一.echo用法 1. echo常用选项 2. 常用的转义字符 3. 特殊符号%.#的用法 二.循环语句 1. ...
随机推荐
- CentOS安装Apache-2.4.25+安全配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...
- 在VMW里安装Ghost操作系统遇到的问题及解决的办法
条件:Ghost系列系统镜像文件 遇到的问题:1.导入镜像文件时提示“无法检测此光盘映像中的操作系统”: 2.分区时提示“ezboot kernel not found” 解决办法:1.直接先创建一个 ...
- django-admin详细设置
Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理数据.后台管理可以在各个app的admin.py文件中进行控制.以下是我最近摸索总结出比较实用的配置.若你有什么比较好的配置 ...
- Submission Details [leetcode] 算法的改进
最先看到这一题,直觉的解法就是len从1到s1.size()-1,递归调用比較s1和s2长度为len的子串是否相等.以及剩余部分是否相等. 将s1分成s1[len + rest],分别比較s2[len ...
- Feature Pyramid Networks for Object Detection
Feature Pyramid Networks for Object Detection 特征金字塔网络用于目标检测 论文地址:https://arxiv.org/pdf/1612.03144.pd ...
- java架构师之路:推荐的15本书
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...
- sql join on 与where
转载:http://www.cnblogs.com/Jessy/p/3525419.html left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录. right join : ...
- go——基本构成要素
Go的语言符号又称为词法元素,共包括5类内容: 标识符(identifier) 关键字(keyword) 字面量(literal) 分隔符(delimiter) 操作符(operator)它们可以组成 ...
- js踩过的一些坑
参考我的博客:http://www.isedwardtang.com/2017/08/29/js-bug/
- js使用经验之谈
1. js 对象,先有的起作用.CSS属性,后有的起作用. 2. 方法中使用submit提交表单,如果提交后面还有代码需要执行,不能保证顺序.例如,提交后关闭页面,很可能会在提交前关闭页面,导致提交 ...