Linux里的eval命令


  這個命令之前沒有用過,在網上查了一下資料,覺得人家寫的很好,所以復制過來了。

  標題:linux命令eval的用法
  鏈接:http://blog.chinaunix.net/uid-21411227-id-1826706.html
  標題:linux shell中的eval
  鏈接:http://www.2cto.com/os/201311/255577.html

 

  語法:eval cmdLine

    eval會對后面的cmdLine進行兩遍掃描,如果在第一遍掃面后cmdLine是一個普通命令,則執行此命令;如果cmdLine中含有變量的間接引用,則保證簡介引用的語義。

  舉例如下:

    set 11 22 33 44

    如果要輸出最近一個參數,即44,可以使用如下命令,

    echo $4

    但是如果我們不知道是幾個參數的時候,要輸出最后一個參數,大家可能會想到使用$#來輸出最后一個參數,

  如果使用命令:

    echo "\$$#"

  則得到的結果是$4,而不是我們想要的44.這里涉及到一個變量簡介引用的問題,我們的本意是輸出$4,默認情況下,命令后忽略變量簡介引用的情況。

  這時候,就可以使用eval命令。

  eval echo "\$$#"

  得到結果為44.

    

  



免責聲明!

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



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