Write by lyc at 2018-10-21
Update by lyc at 2021-3-18:整理自己早期的word版本到markdown

一、shell case条件语句

1.shell if语法

1
2
3
4
5
6
7
8
9
10
11
case "${PARM}" in
value1)
command
;;
value2)
command
;;
*)
command
exit 1
esac

2.例:控制脚本传参

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$ cat sync.sh 
#!/bin/sh

# 控制传入参数个数
[ $# -ne 1 ]&&{
echo "$0"
echo "USAGE: /bin/sh $0 {(A|a)|(B|b)}"
exit 1
}

function main(){
choice=${1}
case "${choice}" in
A|a)
# command
;;
B|b)
# command
;;
*)
echo "USAGE: ${choice} not in the case."
exit 1
esac
}

main $*