shell传递参数
简单介绍python的脚本传参
我们知道python脚本传递参数,有⼀个很⽅便的⽅式-sys.argv.它将脚本本⾝名字和后⾯的各项参数都放⼊⼀个列表。
使⽤的时候,索引这个列表就可以了。例如:
python test.py yes 10
sys.argv[0] # 脚本本⾝名字(字符串test.py)
sys.argv[1] # 脚本后⾯第⼀个参数(字符串yes)
sys.argv[2] # 脚本后⾯第2个参数  (字符串10)
其他参数以此类推,需要注意的是索引是有顺序的,这就要求你脚本传参的时候与索引的顺序⼀致。
shell脚本传参
shell脚本与python相似;想脚本传递参数的格式为:$n。n代表⼀个数字,类似于上⾯python传参⾥的索引,0为脚本本⾝的名字,1为执⾏脚本的第⼀个参数,2为执⾏脚本的第⼆个参数。。。
举个例⼦:下⾯脚本test.sh
#!/bin/bash
echo "我们执⾏的脚本名是: $0"
echo "传⼊的第⼀个参数是: $1"
echo "传⼊的第⼆个参数是: $2"
执⾏的格式是: bash test.sh first second
另外,下⾯⼏个特殊字符对你处理参数可能会有些帮助。
$#  传递到脚本参数的个数
$$  脚本运⾏当前的ID号
$*  以⼀个字符串显⽰所有向脚本传递的参数
$@  与$*类似,但是使⽤时加引号,并在引号中返回每个参数
getopts传参
while getopts ":a:b:c:" opt; do
  case $opt in
    a)
    echo"参数a的值$OPTARG";;
    b)
shell代码    echo"参数b的值$OPTARG";;
    c)
    echo"参数c的值$OPTARG";;
    ?)
    echo"未知参数"
    exit 1;;
    esac
  done
# ----------------------------------------
# 来源:CSDN
# 原⽂:blog.csdn/sinat_36521655/article/details/79296181
# ----------------------------------------
执⾏格式:bash test.sh -a 1 -b 2 -c 3

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。