2015-02-24 96 views
0

使用Ubuntu。我有一個程序在使用-i參數時輸出它的版本。程序本身不會做任何進一步的操作,它只顯示版本號並退出。如何將屏幕輸出存儲到變量(linux)

問題是如何捕獲變量中的輸出(所以版本信息)。我想稍後在Bourne shell中使用它。

假設該程序被稱爲「ABC」。當我執行命令:ABC -i 比它顯示:版本1.00在終端屏幕上。但是,當我輸入一個終端NR = ABC -i; echo $ {NR},那麼NR中沒有任何內容。

[email protected]:~# ABC -i 
version 1.00 
[email protected]:~# NR=`ABC -i` 
version 1.00 
[email protected]:~# echo ${NR} 

[email protected]:~# 

我也試過這樣:

[email protected]:~# NR=$(ABC -i) 
version 1.00 
[email protected]:~# echo $NR 

[email protected]:~# 

我在做什麼錯?

+1

也許你的程序發出的標準錯誤而不是標準輸出版本信息? – 2015-02-24 15:09:46

+0

感謝Paul.But因爲信息在終端窗口中可見,有沒有辦法將它捕獲到變量? – 2015-02-24 15:12:22

+1

@ni_hao您應該發佈您的解決方案作爲答案並將其標記爲已接受。 – 2015-02-24 15:45:37

回答

0

發現:

NR=$(ABC -i 2>&1 >/dev/null) 

感謝保羅表兄弟姐妹,他把我在正確的方向(錯誤)