1.當一個腳本需要傳入的參數(shù)較多時,可以使用for循環(huán)進行參數(shù)遍歷
示例:
#!/bin/bashnumber=65 #定義一個退出值index=1 #定義一個計數(shù)器if [ -z "$1" ];then #對用戶輸入的參數(shù)做判斷,如果未輸入?yún)?shù)則返回腳本的用法并退出,退出值65 echo "Usage:$0 + canshu" exit $numberfiecho "listing args with /$*:" #在屏幕輸入,在$*中遍歷參數(shù)for arg in $* do echo "arg: $index = $arg" let index+=1doneechoindex=1 #將計數(shù)器重新設置為1echo "listing args with /"/$@/":" #在"$@"中遍歷參數(shù)for arg in "$@"do echo "arg: $index = $arg" let index+=1done
小技巧1:在"$*"和$*中遍歷參數(shù)的區(qū)別
示例:
#!/bin/bashnumber=11if [ $# -eq 0 ];then echo "Usage: $0 + canshu" exit $numberfifor i in $* #在$*中遍歷參數(shù),此時每個參數(shù)都是獨立的,會遍歷$#次do echo $idoneechofor i in "$*" #在"$*"中遍歷參數(shù),此時"$*"被擴展為包含所有位置參數(shù)的單個字符串,只遍歷一次do echo $idone
小技巧2:在"$@"和$@中遍歷參數(shù)沒有區(qū)別
示例:
#!/bin/bashnumber=11if [ $# -eq 0 ];then echo "Usage: $0 + canshu" exit $numberfifor i in $@do echo $idoneechofor i in "$@"do echo $idone
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網(wǎng)的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
新聞熱點
疑難解答