zoukankan      html  css  js  c++  java
  • shell 参数与逻辑结构语句

    shell参数

      如同ls 命令可以接受目录等作为它的参数一样,在shell编程时同样可以使用参数。Shell有位置参数和内部参数。

      1、 位置参数

      由系统提供的参数称为位置参数。位置参数的值可以用$N得到,N是一个数字,如果为1,即$1.类似C语言中的数组,Linux会把输入的命令字符串分段并给每段进行标号,标号从0开始。第0号为程序名字,从1开始就表示传递给程序的参数。如$0表示程序的名字,$1表示传递给程序的第一个参数,以此类推。

      2、 内部参数

      上述过程中的$0是一个内部变量,它是必须的,而$1则可有可无。和$0一样的内部变量还有以下几个。

      $# ----传递给程序的总的参数数目

      $? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。

      $* ----传递给程序的所有参数组成的字符串。

    循环结构语句

      shell常见的循环语句有for循环、while循环

      for 循环

      语法:for 变量 in 列表

      do

      代码

      done

      注:变量是要在循环内部用来指代当前所指代的列表中的那个对象的。

      列表是在for 循环的内部要操作的对象,可以是字符串也可以是文件,如果是文件则为文件名。

    While循环

      语法:while 表达式

      do

      代码

      done

      只要while表达式成立,do和done之间的操作就一直会进行。

    条件语句

      Shell程序中的条件语句主要有if语句、case语句;

      If语句

      语法:if 表达式1 then

      代码

      elif 表达式2 then

      代码

      elif 表达式3 then

      代码

      …..

      else

      代码

      fi

    Case语句

      语法:case 字符串 in

      值1|值2)

      代码;;

      值3|值4)

      代码;;

      值5|值6)

      代码;;

      *}

      代码;;

      esac

      case的作用就是当字符串与某个值相同是就执行那个值后面的操作。如果同一个操作对于多个值,则使用”|”将各个值分开。在case的每一个操作的最后面都有两个”;;”,分号是必须的。

    while ... do  ... done  (不确定的循环)

    while [ condition ]  ==>中括号内的状态就是判断式
    do                   ==> do 是循环的开始!
        命令或者代码
        命令或者其他逻辑语句
    done                 ==> done 是循环的结束
    

    for do done (固定的循环)

    for var in con1 con2 con3 ......

    do

         循环体

    done

    var 是变量名,循环中的变量。
    con1 con2 con3 是常量,就是具体的数据,被循环的对象
    也可以是一个已经被赋值的变量, 写法 ${v1} ${v2}

  • 相关阅读:
    SpringBoot配置文件(2)
    SpringBoot配置文件(1)
    java8新特性之stream流
    java8新特性之Lambda表达式
    zoj 1709 Oil Deposits
    zoj 2110 Tempter of the Bone
    poj 2823 Sliding Window
    fzu 1894 志愿者选拔
    hdoj 1754 I Hate It
    poj2404中国邮递员
  • 原文地址:https://www.cnblogs.com/wyglog/p/12375110.html
Copyright © 2011-2022 走看看