我有一个实用程序脚本,它显示有关已部署的 java 应用程序的信息。这是此脚本的示例输出:
名称:TestAPP
版本:快照
类型:ear、ejb、webservices、web
源码路径:/G/bin/app/TESTAPP_LIVE_1.1.9.1.1.ear
状态:启用
是否可以使用 grep 命令 grep 版本和源路径值?现在我可以使用以下命令执行此操作:
| grep 版本
但是当我只需要一个值时它会输出整个字符串(例如版本:快照)(例如在进一步的脚本命令中使用的快照)
我有一个实用程序脚本,它显示有关已部署的 java 应用程序的信息。这是此脚本的示例输出:
名称:TestAPP
版本:快照
类型:ear、ejb、webservices、web
源码路径:/G/bin/app/TESTAPP_LIVE_1.1.9.1.1.ear
状态:启用
是否可以使用 grep 命令 grep 版本和源路径值?现在我可以使用以下命令执行此操作:
| grep 版本
但是当我只需要一个值时它会输出整个字符串(例如版本:快照)(例如在进一步的脚本命令中使用的快照)
这是一个纯粹的grep解决方案。
使用-P正则表达式模式的选项,以及-o仅检索匹配内容的选项。
grep -Po "(?<=^Version : ).*"
以下是您将为 Source 执行的操作:
grep -Po "(?<=^Source : ).*"
它使用积极的后视。
grep Version | cut -d ':' -f 2
awk如果您有兴趣,可以使用以下解决方案:
grep Version | awk '{print $3}'
$3表示从该行打印第三个单词。
注意:
$2改用。