Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧
1.當(dāng)一個(gè)腳本需要傳入的參數(shù)較多時(shí),可以使用for循環(huán)進(jìn)行參數(shù)遍歷
示例:
#!/bin/bash number=65 #定義一個(gè)退出值 index=1 #定義一個(gè)計(jì)數(shù)器 if [ -z "$1" ];then #對(duì)用戶輸入的參數(shù)做判斷,如果未輸入?yún)?shù)則返回腳本的用法并退出,退出值65 echo "Usage:$0 + canshu" exit $number fi echo "listing args with \$*:" #在屏幕輸入,在$*中遍歷參數(shù) for arg in $* do echo "arg: $index = $arg" let index+=1 done echo index=1 #將計(jì)數(shù)器重新設(shè)置為1 echo "listing args with \"\$@\":" #在"$@"中遍歷參數(shù) for arg in "$@" do echo "arg: $index = $arg" let index+=1 done

小技巧1:在"$*"和$*中遍歷參數(shù)的區(qū)別
示例:
#!/bin/bash number=11 if [ $# -eq 0 ];then echo "Usage: $0 + canshu" exit $number fi for i in $* #在$*中遍歷參數(shù),此時(shí)每個(gè)參數(shù)都是獨(dú)立的,會(huì)遍歷$#次 do echo $i done echo for i in "$*" #在"$*"中遍歷參數(shù),此時(shí)"$*"被擴(kuò)展為包含所有位置參數(shù)的單個(gè)字符串,只遍歷一次 do echo $i done

小技巧2:在"$@"和$@中遍歷參數(shù)沒有區(qū)別
示例:
#!/bin/bash number=11 if [ $# -eq 0 ];then echo "Usage: $0 + canshu" exit $number fi for i in $@ do echo $i done echo for i in "$@" do echo $i done

總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- Shell中的循環(huán)語句for、while、until實(shí)例講解
- shell中的for循環(huán)用法詳解
- linux shell循環(huán):for、while、until用法詳解
- Shell中的for和while循環(huán)詳細(xì)總結(jié)
- Shell中的for循環(huán)總結(jié)
- 基于Shell中for循環(huán)的幾個(gè)常用寫法分享
- linux shell 中數(shù)組的定義和for循環(huán)遍歷的方法
- Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法
- shell for循環(huán)與數(shù)組應(yīng)用介紹
- shell編程中for循環(huán)語句的實(shí)現(xiàn)過程及案例
相關(guān)文章
shell腳本實(shí)現(xiàn)實(shí)時(shí)檢測(cè)文件變更
這篇文章主要介紹了shell腳本實(shí)現(xiàn)實(shí)時(shí)檢測(cè)文件變更,本文直接給出實(shí)現(xiàn)代碼和使用方法,以及svn下的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-05-05
Shell eval通過變量獲取環(huán)境變量的方法實(shí)現(xiàn)
這篇文章主要介紹了Shell eval通過變量獲取環(huán)境變量的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12

