Shell script: 獲取第10+個參數


在Shell腳本中,可以用$n的方式獲取第n個參數,例如,一個名為paramtest的腳本:

    #!/bin/bash
    echo $1 $2

執行./paramtest a b 的結果是打印出第1個和第2個參數:

    a b

但是,若腳本需要10個以上的參數,直接寫數字會有問題。例如,腳本為:

    #!/bin/bash
    echo $1 $2 $3 $4 $6 $7 $8 $9 $10

執行./paramtest a b c d e f g h i j,結果如下,第10個參數是不對的:

    a b c d e f g h i a0

顯然$10被解釋成了$1+0。

解決方法很簡單,第10個參數加花括號即可:

    #!/bin/bash
    echo $1 $2 $3 $4 $6 $7 $8 $9 ${10}

再次執行./paramtest a b c d e f g h i j,結果正確:

    a b c d e f g h i j


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM