zoukankan      html  css  js  c++  java
  • shell script 基本语法

     几个符号的意义
    $#:代表后接的参数『个数』,以上表为例这裡显示为『 4 』;
    $@:代表『 "$1" "$2" "$3" "$4" 』之意,每个变数是独立的(用双引号括起来);
    $*:代表『 "$1c$2c$3c$4" 』,其中 c 为分隔字元,预设为空白键, 所以本例中代表『 "$1 $2 $3 $4" 』之意。
    shift
    [root@www scripts]# vi sh08.sh
    #!/bin/bash
    echo "Total parameter number is ==> $#"
    echo "Your whole parameter is   ==> '$@'"
    shift   # 进行第一次『一个变数的 shift 』
    echo "Total parameter number is ==> $#"
    echo "Your whole parameter is   ==> '$@'"
    shift 3 # 进行第二次『三个变数的 shift 』
    echo "Total parameter number is ==> $#"
    echo "Your whole parameter is   ==> '$@'"
    结果
    [root@www scripts]# sh sh08.sh one two three four five six #给予六个参数
    Total parameter number is ==> 6   #最原始的参数情况
    Your whole parameter is   ==> 'one two three four five six'
    Total parameter number is ==> 5   #第一次偏移,看底下发现第一个 one 不见了
    Your whole parameter is   ==> 'two three four five six'
    Total parameter number is ==> 2   #第二次偏移掉三个,two three four 不见了
    Your whole parameter is   ==> 'five six'
    if …. then
    if [ 条件判断式一 ]; then
     当条件判断式一成立时,可以进行的指令工作内容;
    elif [ 条件判断式二 ]; then
     当条件判断式二成立时,可以进行的指令工作内容;
    else
     当条件判断式一与二均不成立时,可以进行的指令工作内容;
    fi
    && 代表 AND ;
    || 代表 or ;
    所以,在使用中括号的判断式中, && 及 || 就与指令下达的状态不同了。
    [ "$yn" == "Y" -o "$yn" == "y" ] 可替换为 [ "$yn" == "Y" ] || [ "$yn" == "y" ]
    case … esac
    case  $变数名称 in
      "第一个变数内容")
     程式段
     ;;
      "第二个变数内容")
     程式段
     ;;
      *)
     不包含第一个变数内容与第二个变数内容的其他程式执行段
     exit 1
     ;;
    esac
    function
    function fname() {
     程式段
    }
    循环
    while [ condition ]
    do
     程式段落
    done
    until [ condition ]
    do
     程式段落
    done
    for var in con1 con2 con3 ...
    do
     程式段
    done
    for (( 初始值; 限制值; 执行步阶 ))
    do
     程式段
    done

  • 相关阅读:
    mac安装和启动mongodb
    Promise
    Vue 对象更改检测注意事项
    Vue 改变数组触发视图更新
    MBE风格图标
    为什么vue中的data用return返回
    数据库补充知识之sql编程
    第一阶段:Python开发基础 day45 数据库基础知识之子查询视图的相关操作事务和游标等
    第一阶段:Python开发基础 day44 数据库基础知识之多表查询
    第一阶段:Python开发基础 day43 数据库基础知识之多表操作
  • 原文地址:https://www.cnblogs.com/xieqianli/p/4219675.html
Copyright © 2011-2022 走看看