2010-07-22 42 views
1

主題shell腳本shell腳本(ksh)+比較標誌爲param有可能嗎?

,如果我在下面

[[ 2 -eq 2 ]] && print OK 

進行比較,我得到OK

但如何比較,如果 「-eq」 是我PARAM

例如

param =「 - eq」

[[ 2 $param 2 ]] && print OK 

明顯的不是非法的

但我不知道是否有可能無論如何有一些變化?? 利迪婭

回答

0

我不知道你爲什麼會想這樣做,但你可以使用eval此:

eval [[ 2 $param 2 ]] && print OK 
+0

尼斯 - :)和,如果我執行什麼(如果[......]那麼)在這種情況下,我需要把eval命令? – lidia 2010-07-22 11:47:09

+1

@lidia:你可以在'if'之後加上'eval':'if eval [[...]]' – 2010-07-22 11:57:21

1

[[構建精確設計,使運營商(如-eq)必須直接指定,以避免來自參數擴展的字符串被意外解釋爲參數。

使用[,這是一個與[[語法相似的普通命令。由於這是一個普通的命令,參數擴展正常發生。

[ 2 $param 2 ] && print OK