#!/bin/bash while [[ $# > 0 ]] do k="$1" shift case $k in -f|--from) Sa=$1 shift ;; -e|--env) Ta=$1 shift ;; -s|--ser) Sb=$1 shift ;; -i|--img) Is=$1 shift ;; *) args="$key $*" break ;; esac done echo $Sa echo $Ta echo $Sb echo $Is
注解:
1、以上功能为shell脚本中传参功能
2、shift没执行一次总的参数个数减一,并且参数向前进一位
3、具体参数可以使用case中管道符|前面或者后面的参数