zoukankan      html  css  js  c++  java
  • Shell编程中Shift的用法

    Shell编程中Shift的用法

    Bash中,数组变量的赋值有两种方法:

      (1) name = (value1 ... valuen) 此时下标从0开始

      (2) name[index] = value

      下面以一个简单的脚本来说明,脚本内容如下:

    #!/bin/sh
    
    until [ $# -eq 0 ]
    do
    echo "第一个参数为: $1 参数个数为: $#"
    shift
    done

    执行以上程序x_shift.sh:

    [root@AY1404171530212980a0Z test]# ./test 11 22 33 44 55 66 77

    结果显示如下:

    第一个参数为: 11 参数个数为: 7
    第一个参数为: 22 参数个数为: 6
    第一个参数为: 33 参数个数为: 5
    第一个参数为: 44 参数个数为: 4
    第一个参数为: 55 参数个数为: 3
    第一个参数为: 66 参数个数为: 2
    第一个参数为: 77 参数个数为: 1

    从上可知 shift 命令每执行一次,变量的个数($#)减一,而变量值提前一位,

    下面代码用 until 和 shift 命令计算所有命令行参数的和。

    #!/bin/sh
    if [ $# -eq 0 ]
    then
    echo "Usage:x_shift2.sh 参数"
    exit 1
    fi
    sum=0
    until [ $# -eq 0 ]
    do
    sum=`expr $sum + $1`
    shift
    done
    echo "sum is: $sum"

    执行上述程序:

    [root@AY1404171530212980a0Z test]# ./test2 11 22 33 44 55 66 77
    sum is: 308

      Shift 命令还有另外一个重要用途, Bash 定义了9个位置变量,从 $1 到 $9,这并不意味着用户在命令行只能使用9个参数,借助 shift 命令可以访问多于9个的参数。

      Shift 命令一次移动参数的个数由其所带的参数指定。例如当 shell 程序处理完前九个命令行参数后,可以使用 shift 9 命令把 $10 移到 $1。

  • 相关阅读:
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
  • 原文地址:https://www.cnblogs.com/mjorcen/p/3795480.html
Copyright © 2011-2022 走看看