Linux shell编程 10 ---- 循环结构

 1 for循环

    1 for循环是Linux Shell中常用的结构,for循环有三种结构;一种是列表for循环,第二种是不带列表的for循环,第三种是类C风格的for循环。

    

    2 列表for循环

       for variable in list

       do

           statement

       done

    3 不带列表for循环

        for variable

        do 

            statement

        done

    

    4 类C风格的for循环

        for (( expr1; expr2; expr3 ))

        do

             statement

        done

 2 while循环

     1 while循环的结构

        while expression

        do 

            statement

        done

   

 3 until循环

    1 在执行while循环的时候只要expression的退出状态为0,将一直执行循环体。until命令和while命令类似,但区别是until循环中的expression的退出状态不为0的时候循环体将会一直执行。

    2 until的结构

       untile expression

       do 

           statement

       done

    

 4 循环控制符号

    1 break语句可以应用在for,while和until循环语句中,用于强行循环,也就是忽略循环体中任何其它语句和循环条件的限制。

    2 continue循环控制符应用在for,while和until语句中,用于让脚本跳过后面的语句,执行下一次的循环。

时间: 2024-09-14 17:51:37

Linux shell编程 10 ---- 循环结构的相关文章

Linux shell编程基础 三、shell的基本结构

shell结构大体是由设定变量.内置命令.shell的语法结构.函数组成. 使用实例说明:test.sh #!/bin/bash #说明使用/bin/bash作为这个脚本的解释器 #定义一个函数 function my_fun () { echo "Hello, $1,today is $2" } #定义连个变量 name=$1 today=`date` #函数调用 my_fun "$name" "$today" 上面的这个脚本要想运行还需要做一

shell编程for循环的问题

问题描述 shell编程for循环的问题 在linux下,应该怎样编程利用for循环实现1+2+..+n? 解决方案 #!/bin/bash total=0 n=100 for ((j=1;j<=n;j++)) do total=`expr $total + $j` done echo "The result is $total" 解决方案二: #! /bin/bash total=0; n=100 for((i=1;i<=n;i++)) do let "tota

linux shell编程中date命令的用法

在linux shell编程中,经常用到日期的加减运算 以前都是自己通过expr函数计算,很麻烦 其实date命令本身提供了日期的加减运算 非常方便.例如:得到昨天的时间 date +%Y%m%d --date="-1 day" date 用法: date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] date 可以用来显示或设定系统的日期与时间. 令1.在显示方面,使用者可以设定欲显

linux shell编程 sed指令问题

问题描述 linux shell编程 sed指令问题 在同一个目录下有两个文件oracle-ds.xml,postgresql-ds.xml 我分别执行指令 sed -n '/^ */p' oracle-ds.xml sed -n '/^ */p' postgresql-ds.xml 为什么oracle-ds.xml 的可以匹配到,而postgresql-ds.xml无法匹配到,两个文件都有 查了半天没弄懂,求指点 我粘下文件内容: oracle-ds.xml: Oracle9i 2330201

Linux Shell 编程实战技巧

避免定时任务脚本的常见问题 很多脚本在实际使用的时候往往是以定时任务的方式运行,而非手工运行.但是实现同样功能的脚本在这两种运行方式下可能遇到的问题不尽相同. 以定时任务方式运行的脚本往往会遇到以下几个问题. 路径问题:当前目录往往不是脚本文件所在目录.因此,脚本在引用其使用的外部文件,如配置文件和其它脚本文件时,无法方便得使用相对路径. 命令找不到问题:脚本中使用到的一些外部命令,在手工执行脚本的时候可以正常调用.但是在定时任务下运行则可能出现脚本解析器找不到相关命令的问题. 脚本重复运行问题

Linux shell编程 12 ---- 管道+I/O重定向

 1 管道简介      1 管道技术是Linux的一种基本的进程间通信技术,它利用先进先出排队模型来指挥进程间的通信.对于管道,我们可以形象的理解为连接两个实体的一个单向连接器      2 Shell编程中管道符号是"|",命令直接利用管道进行通信的一般格式         command1 | command2 | command3 | ... | commandn         command1-commandn是n个命令,如果没有管道那么结果将会直接显示在Shell中,当S

linux shell 编程

shell 编程 1.简述 利用vi等文本编辑器编写Shell脚本的格式是固定的,如下: #!/bin/bash #comments Your commands go here 首行中的符号#!告诉系统其后路径所指定的程序bash即是解释此脚本文件的Shell程序. 除第一行外,以#开头的行就是注释行,直到此行的结束.如果一行未完成,可以在行尾加上",这个符号表明下一行与此行会合并为同一行. 2.变量 有环境变量.内部变量.用户变量. Shell Script是一种弱类型语言,使用变量的时候无需

Linux shell编程 9 ---- 判断+运算符

 1 判断     1 简单if语句        if expression        then               statement               statement        fi         如果then处在同一行,要在expression后面加上";"          2 if/else结构        if expression        then                statement               st

Linux shell编程 4 ---- shell中的循环

 1 for循环     1 for语句的结构        for variable in values;        do                  statement        done     2 for循环通常是用来处理一组值,这组值可以是任意的字符串的集合     3 for循环举例                                2 while循环     1 while循环的结构        while condition;         do