场景: 写bash脚本经长要获取命令行参数, so…

bash 自动获取 本文参考stackoverflow

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
while [[ $# -gt 0 ]] # 判断有参数, 就获取
do
key=$1
case $1 in
-u|--user)
echo $2 # get -u | --user value
shift
;;
-p|--password)
echo $2 # get -p | --password value
shift
;;
-h|--help)
echo "Use: (-u | --user set username) : (-p | --password set passwod)" # get --help
shift
;;
esac
shift
done

ps: $# 获取参数个数. $@ 获取所有参数. $1获取第1个参数. 脚本shift关键字的作用就很好理解咯