shell 參數個數
20190904
參數個數
在寫shell腳本的時候,會有這樣的需求:根據傳入的參數個數來選擇相應的操作。
- 命令
$#返回出入的參數,但要注意對$#的引用范圍 - 測試代碼
#!/bin/bash
#參數個數命令 $#
#date:2018-08-08
date1=$1
date2=$2
let nump1=$#
echo "---函數外---"$nump1
function main(){
let nump2=$#
echo "---函數內---"$nump2
if [[ $nump1 = 1 ]]
then
let date2int="${date1:0:4}${date1:5:2}${date1:8:2}"
echo $date2int
exit
fi
echo $date1
}
main
- 1、條件判斷為:
if [[ $nump1 = 1 ]]
$ sh test_num_parameter.sh 2018-08-09
- 輸出
---函數外---1
---函數內---0
20180809
- 2、條件判斷為:
if [[ $nump2 = 1 ]]
$ sh test_num_parameter.sh 2019-01-01
- 輸出
---函數外---1
---函數內---0
2019-01-01
$#的作用域只在最外層
