首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从grep命令返回多模式的单个实例

从grep命令返回多模式的单个实例
EN

Unix & Linux用户
提问于 2018-10-16 14:29:21
回答 1查看 376关注 0票数 -1

我有一个返回数百行的ps -ef命令的输出,除了末尾的数字之外,我需要对一个模式进行grep,并且返回每个模式的一个实例。示例:

这个特定的ps -ef命令输出数十行,每行包含字符串svc-0svc-5或0到5之间的任何数字,svc编号是随机分配的。如果我执行grep -Eo 'svc-[0-5]',它将只匹配模式并从每一行返回每个实例。我只需要确认svc-0svc-5的存在。我希望的输出是:

代码语言:javascript
复制
svc-0
svc-5

我不能仅仅将一个-m2添加到grep中,因为svc行经常在一行中重复多次,例如:

代码语言:javascript
复制
svc-5
svc-5
svc-5
svc-5
svc-5
svc-0
svc-0
svc-0
svc-0
svc-0
EN

回答 1

Unix & Linux用户

发布于 2018-10-16 15:15:36

您可以使用一个awk过滤器来接近它,该过滤器查找所需的两种模式;如果找到这两种模式,则成功退出,否则退出时使用"failure":

代码语言:javascript
复制
ps -ef ... | awk '/svc-0/ { zero++; } /svc-5/ { five++; } END { if (zero && five) exit 0; exit 1; }'
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/475826

复制
相关文章

相似问题

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