2016-04-14 110 views
0

我完全不熟悉bash腳本。我的問題是使用bash腳本的OSGI命令的輸出存儲到一個變量,或者直接到.txt文件:使用Bash腳本將OSGI命令輸出存儲到變量中

 
$ osgi 
$ version 
fw verion: xxxx 
xxxxxxxx 
xxxxxxxx 

我激活OSGi和必須鍵入「版本」然後我得到的幾行輸出,我想將這個輸出存儲到一個變量中,或者直接存儲到一個.txt文件中(稍後檢查我的版本是否與grep "fw version: xxx" file.txt等一致)。

回答

0

可以運行你的OSGi命令,並把「> file.txt的」結尾沒有報價,將輸出重定向到文件

+0

嗨,我在上面的回覆 –

+0

@ R上添加了一條評論。 Lattner然後嘗試批量處理: 1:$(var)='osgi command' 2:echo $(var) 對不起 - 無法將代碼拆分爲2行:) – Drako

0

您可以將命令的輸出分配給這樣的變量:

$ var=$(date) 

$ echo $var 
Thu Apr 14 16:02:41 CEST 2016 
+0

嗨, 感謝您的回覆,if我嘗試這種方式,它不會工作,因爲如果我鍵入「osgi」就像進入一個新的模式,我不能在那裏使用bash命令。所以如果我在命令窗口中輸入「osgi && version」之類的東西,它就會切換到osgi模式,就像他忽略了「版本」命令一樣。如果我嘗試在該模式下使用bash命令,他將只顯示可用的osgi命令,如「version; config.xxx等」。 –

+0

我不熟悉你使用的'osgi'命令,但它似乎是交互式的,比如'dc'。所以我認爲它會從標準輸入讀取像一個行爲良好的程序應該:'var = $(echo「3 4 + p」| dc)',或者在你的情況下,'version = $(echo version | osgi) 。 –

相關問題