將命令行的參數給篩選出來vim
代碼以下:bash
[root@youyan 19:58:08~/test]# vim test02.sh #!/bin/bash while getopts a:b:c: opt;do #abc表示參數 case $opt in a) a=$OPTARG;; #$OPTARG表明參數後面的值 b) b=$OPTARG;; c) c=$OPTARG;; *) echo "illegal";; esac done echo $a echo $b echo $c
結果以下ide
[root@youyan 20:02:45~/test]# bash test02.sh -a 1 -b 2 -c 3 1 2 3
另外,還可使用if語句對其進行判斷,是否爲空,若是爲空則退出。代碼以下命令行
#!/bin/bash while getopts a:b:c: opt;do case $opt in a) a=$OPTARG;; b) b=$OPTARG;; c) c=$OPTARG;; *) echo "illegal";; esac done if [[ -z "${a}" || -z "${b}" || -z "${c}" ]]; then #abc收到參數傳過來的值後,再次檢查是否爲空,若是爲空,則退出 echo "illegal"; exit 1 fi echo $a echo $b echo $c