zoukankan      html  css  js  c++  java
  • bash 特殊变量

    脚本参数 $* $@ $N shift

    执行一个脚本时可以传递参数, 事实上每个参数都有对应的变量$0~$9

    ./start.sh  a   b   c

    $0           $1 $2 $3

    当参数超过9时, 使用 "shift N" 来移动除$0之外的参数, 前N个参数就像消失了一样, 不能再被引用了

    shift 1

    ./start.sh  a   b   c

    $0           _  $1 $2

    $@和$*可以快速地向下传递参数

    "$@"最为常用, 不改变参数结构

    "$*"则将整个参数作为一整个参数向下传递

    不用""包裹的话, $@和$*都会将原先的空格稀释掉, 这可能会相当麻烦, 请务必使用"$@"和"$*"

    "$@"和"$*"的区别

    "$*"至少会传递一个参数,即使为空串。

    参数数量 $#

    有时需要知道参数数量, 使用 "$#" 即可. 不包含$0在内.

    Shell进程PID $$

    kill -9 $$ 可以杀死当前正在执行这条语句的Shell进程

    变量作为变量名, 以下是遍历脚本参数的算法

    argc="$#"

    i=0
    while (($i<$argc)); do
    let j=i+1
    echo $(eval echo "$""$j")
    let i++
    done

    shell 脚本关闭通配符

    set -f  //关闭通配符
    echo *
    set +f  //显示通配符

  • 相关阅读:
    Vue 项目目录结构分析
    Vue 项目环境搭建
    Vue 组件
    Vue 指令
    Vue 实例成员
    Django 静态文件
    MySQL 索引详解
    Django 请求生命周期
    18. 4Sum (JAVA)
    16. 3Sum Closest (JAVA)
  • 原文地址:https://www.cnblogs.com/develon/p/10308998.html
Copyright © 2011-2022 走看看