3
請看看下面的命令:的Linux命令shell命令行奇怪的行爲
[email protected]:~/usp$ cat file
c
b
a
[email protected]:~/usp$ x="cat file | sort"
[email protected]:~/usp$ $x
c
b
a
cat: |: 沒有那個文件或目錄
cat: sort: 沒有那個文件或目錄
我的問題是,爲什麼$ x的輸出不是:
a
b
c
劑量雙引號改變命令行爲cat file | sort
?
這確實是什麼錯誤消息說(沒有這樣的文件或目錄)。 – EOL 2013-05-05 15:44:01
謝謝@Mat和@EOL。我希望在'until'命令中使用一個變量,例如'until $ var'來減少代碼行,因爲在不同情況下,'until'命令語句會有所不同。在其中一種情況下,我需要執行像'var =「command1 | command2」'這樣的任務。現在它不起作用。有沒有解決這個問題的另一種方法? – 2013-05-05 16:02:43
@ Wenhao Yang:你應該爲此提出一個新問題,但一定要包括足夠的細節,因爲這看起來有點奇怪。你不能使用函數而不是變量嗎? – Mat 2013-05-05 16:08:24