Linux與命令列基礎 $ X=1 $ bash -c 'echo "[$X]"' $ export X $ bash -c 'echo "[$X]"'依序執行上面的指令時,兩個 bash -c 的輸出組合是下列何者? A[] 與 [1] B[1] 與 [1] C[] 與 [] 查看答案與解析 正確答案:A. [] 與 [1] 只以「X=1」指定的變數是 shell 變數,只能在該 shell 中使用,不會傳給它啟動的子行程(這裡是新的 bash)。加上 export 後會成為環境變數,之後啟動的子行程會繼承它的值。因此第1個是 [],第2個是 [1]。因為用單引號括起來,$X 不是在父 shell,而是在子 bash 中展開。 A. 正確。在 export 之前,X 不會傳給子行程。B. 只做了指定的 shell 變數不會被子行程繼承。C. 在 export 之後啟動的子行程會繼承 X 的值。 繼續練習Linux與命令列基礎的另外9題