2016-04-14 74 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) 。 –

相关问题