首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Unix grep命令

Unix grep命令
EN

Stack Overflow用户
提问于 2013-04-26 12:48:20
回答 3查看 213关注 0票数 0

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

名称: TestAPP 版本:快照 类型: ear,ejb,webservices,web 源路径:/G/bin/app/TESTAPP_Live1.1.9.1.1.ear 状态:已启用

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

grep版本

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

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-26 13:00:31

代码语言:javascript
复制
grep Version | cut -d ':' -f 2 
票数 2
EN

Stack Overflow用户

发布于 2013-04-26 12:50:25

这里是一个纯grep解决方案。

使用regex模式的-P选项,只检索匹配的内容的-o选项。

代码语言:javascript
复制
grep -Po "(?<=^Version : ).*"

以下是你将为资料来源所做的工作:

代码语言:javascript
复制
grep -Po "(?<=^Source : ).*"

它使用的是一个正向后视。

票数 2
EN

Stack Overflow用户

发布于 2013-04-26 13:06:50

如果您感兴趣,这里有一个使用awk的解决方案:

代码语言:javascript
复制
grep Version | awk '{print $3}'

$3的意思是从那一行打印第三个单词。

请注意:

  1. 这只显示一个单词。
  2. 这假设您在冒号之间有空格(因此版本实际上是第三个"word")。如果没有,则使用$2代替。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16236879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档