Bash 脚本长参数(getopts)
在脚本里面使用 getopts 获取参数。
示例
test2.sh
#!/bin/bash
function main() {
local OPTIND
count=0
while getopts ab:-: OPT
do
echo "current -${OPT}${OPTARG}"
case "${OPT}" in
-)
case "${OPTARG%%=*}" in
atest)
echo "option: --${OPTARG}"
echo ""
let count++
;;
btest)
echo "option: --${OPTARG%%=*}"
echo "value: ${OPTARG#*=}"
echo ""
let count=count+2
;;
esac
;;
a)
echo "option: ${OPTIND}"
echo ""
let count++
;;
b)
echo "option: ${OPTIND}"
echo "value: ${OPTARG}"
echo ""
let count=count+2
;;
esac
done
shift $count
echo "rest option(s): $@"
}
main "$@"
执行: