循环

一、whlie和until循环

while循环基本语法:

while <条件表达式>
do
指令
done
#注意代码缩进

util循环基本语法:

until <表达式>
do
指令
done
#与while的区别:不成立时进入循环,成立时终止循环

注意while条件表达式跟if的区别:if后的表达式是形如'[ a -eq b ]'这样的表达式,此时返回0为真,while后跟(( a < b)),返回1时为真。

# !/bin/bash
sum=
i=
while ((sum>i)) #正确
do
((sum=sum-i))
echo "The sum now is $sum"
done
echo "The money is less than $i pls add it"
# !/bin/bash
sum=
i=
while [ $sum -gt $i ] #错误的写法
do
((sum=sum-i))
echo "The sum now is $sum"
done
echo "The money is less than $i pls add it"

使用while按行读文件:

方法一:

exec <FILE
sum=
while read line
do
echo $line
done

方法二:使用cat读文件

cat filePath | while read line
do
cmd
done

方法三:结尾重定向

while read line
do
cmd
done<$

二、for与select循环

for循环语法:

语法一:

for 变量名 in 变量取值列表
do
cmd
done

注意:"in 变量取值列表"可以省略,省略时相当于"in $@"

语法二(与C语言相识):

for((expr1;expr2;expr3))
do
cmd
done

例子:

for num in
do
echo $num
done

等同于

for num in {..}
do
echo $num
done

批量更改当前目录下的文件名:

# !/bin/bash
for n in `ls`
do
mv $n `echo $n|cut -d . -f1`.gif
done

select 循环语句主要用来打印菜单

# !/bin/bash
select name in tang jia pi bear
do
echo $name
done

in后面也可以接命令结果或者数组

Shell脚本笔记(八)循环的更多相关文章

  1. shell脚本之for循环

    shell脚本之for循环 author :headsen  chen       2017-10-18    09:50:41 个人原创,转载请注明.否则依法追究法律责任 1,cat forloop ...

  2. shell 脚本中所有循环语法

    写出 shell 脚本中所有循环语法 for 循环 : for i in $(ls);do echo item:$i done while 循环 : #!/bin/bash COUNTER=0 whi ...

  3. centos shell脚本编程2 if 判断 case判断 shell脚本中的循环 for while shell中的函数 break continue test 命令 第三十六节课

    centos  shell脚本编程2 if 判断  case判断   shell脚本中的循环  for   while   shell中的函数  break  continue  test 命令   ...

  4. shell脚本中select循环语句用法

    shell脚本中select循环语句 1. 脚本中select的语法格式 select VAR in LIST do command1 command2 ... ... commandN done s ...

  5. shell脚本进阶之循环判断

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; f ...

  6. shell脚本笔记(原创不断记录)

    今天开始自己的shell脚本练习,刚好公司有太服务器,要时间对数据的cp是按月的: 考虑:首先寻找规律,发现都放置在/opt/www/aaa/  里面有很多的2级和3级目录和文件,但我追踪要备份的是年 ...

  7. Shell脚本笔记

      如何查询文件里的某个字符串? grep “字符串” 文件 例:grep "abc" tmp.txt   如何将查询出来的内容赋给变量? str=$(grep "abc ...

  8. Shell脚本笔记(七)控制Shell脚本

    控制Shell脚本 一.处理信号 1) SIGHUP本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联. ...

  9. Shell脚本笔记(一)一些零碎的基础知识

    一些零碎的基础知识 一.认识Shell脚本 一)相关概念 Shell是一种命令解释器,作用是按次序执行(遇到子脚本,先执行子脚本的命令)用户输入的命令和程序. Shell脚本语言是弱类型语言,与其他脚 ...

  10. Shell脚本笔记(二)Shell变量

    Shell变量 一)全局环境变量 全局变量对于定义它的shell和其子shell都是可见的,但如果生成它的shell被终止,全局变量也就消失了.另外全局变量会被子shell的同名变量覆盖. #定义一个 ...

随机推荐

  1. uva11754 中国剩余定理+暴力搜索

    是当y的组合数较小时,暴力枚举所有组合,然后用中国剩余定理求每种组合的解,对解进行排序即可 注意初始解可能是负数,所以如果凑不够S个,就对所有解加上M,2M.... 当y的组合数较大时,选择一个k/x ...

  2. Nginx详解二十二:Nginx深度学习篇之Lua解释器安装及基础语法

    解释器 Lua:Lua是一个简洁.轻量.可扩展的脚本语言 Nginx+Lua优势充分的结合Nginx的并发处理epoll优势的Lua的轻量实现简单的功能切高并发的场景 安装Lua 1.安装解释器:yu ...

  3. 使用git克隆项目、从dev分支上更新代码以及将代码提交到Coding(或GitHub)上面

    本教程的目的: 这是个crm项目中,有两个分支一个是master 和 dev ,master主分支,不允许提交代码,我要拉去dev分支上最新的代码,并将修改后的项目,在推送到dev分支上. 一. 1. ...

  4. Java 输入一组数字,用穷举的方法列出

    import java.util.Scanner; public class TestScanner { public static void main(String[] args) { Scanne ...

  5. Python函数之匿名函数

    一:概述 匿名函数主要用来处理比较简单的逻辑,用一行显示,并将运算结果作为返回值返回 二:书写规则 函数名 = lambda 参数:返回值 参数可以有多个,多个参数使用逗号分隔 三 :例子 将func ...

  6. Controller中方法返回值其他类型需要添加jackson依赖

    第一个 第二个: 第三个 https://www.cnblogs.com/codejackanapes/p/5569013.html:json的博客园 springmvc默认的是:2.Jackson: ...

  7. 史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)

    一.简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件. 在Spring Cloud中,有分布式配置中心组件spring cloud confi ...

  8. 三 os模块

    os模块是与操作系统交互的一个接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相 ...

  9. 007-Python函数-装饰器

    函数回顾 1.函数可以当做一个参数赋值给另一个函数: def func(): print("in the func") def foo(x): x() foo(func) 输出: ...

  10. Caused by: java.lang.NumberFormatException: For input string: "18446744073709551615"

    问题:Caused by: java.lang.NumberFormatException: For input string: "18446744073709551615" 原因 ...