bash中 $@ $* 詳細解釋


  

  1. $@      $*        沒有" "包圍時,兩者無任何區別,將每個參數看作單獨參數,當參數中使用' '或" "時會將其拆開,作為單獨參數,因此,此種用法,可能曲解參數傳遞的本意
    #!/bin/evn bash -u echo "print each parameter from \$*"
    
    for p in  $*
    do
        echo $p done
    
    echo "print each parameter from \$@"
    
    for p in $@ do
        echo $p done

     

     

     

     可以看到參數中的'd e'被拆開作為兩個參數



  2. "$@"     "$*"         當其被" "包含,"$*" 將所有參數當作整體,"$@" 每個參數獨立,並且保留參數的結構
    #!/bin/evn bash -u echo "print each parameter from \"\$*\""
    
    for p in  "$*"
    do
        echo $p done
    
    echo "print each parameter from \"\$@\""
    
    for p in "$@" do
        echo $p done

     

     

     

     


免責聲明!

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



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