0

我有一个实用程序脚本,它显示有关已部署的 java 应用程序的信息。这是此脚本的示例输出:

名称:TestAPP

版本:快照

类型:ear、ejb、webservices、web

源码路径:/G/bin/app/TESTAPP_LIVE_1.1.9.1.1.ear

状态:启用

是否可以使用 grep 命令 grep 版本和源路径值?现在我可以使用以下命令执行此操作:

| grep 版本

但是当我只需要一个值时它会输出整个字符串(例如版本:快照)(例如在进一步的脚本命令中使用的快照)

4

3 回答 3

2

这是一个纯粹的grep解决方案。

使用-P正则表达式模式的选项,以及-o仅检索匹配内容的选项。

grep -Po "(?<=^Version : ).*"

以下是您将为 Source 执行的操作:

grep -Po "(?<=^Source : ).*"

它使用积极的后视。

于 2013-04-26T12:50:25.150 回答
2
grep Version | cut -d ':' -f 2 
于 2013-04-26T13:00:31.357 回答
0

awk如果您有兴趣,可以使用以下解决方案:

grep Version | awk '{print $3}'

$3表示从该行打印第三个单词。

注意:

  1. 这仅显示一个单词
  2. 这假设您在冒号之间有空格(因此版本实际上是第三个“单词”)。如果不这样做,请$2改用。
于 2013-04-26T13:06:50.380 回答