首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在使用grep时保留列标题?

如何在使用grep时保留列标题?
EN

Stack Overflow用户
提问于 2014-10-10 08:34:31
回答 1查看 2K关注 0票数 0

一些程序的输出以列名(例如ps a)开头:

代码语言:javascript
运行
复制
$ ps a

  PID TTY      STAT   TIME COMMAND
 1306 tty1     Ss+    0:00 /sbin/mingetty /dev/tty1
 1318 hvc0     Ss+    0:00 /sbin/agetty hvc0 38400 vt100-nav
14696 pts/0    Ss     0:00 -bash
15283 pts/0    R+     0:00 ps a

现在,假设我想找出阿吉蒂的出现

代码语言:javascript
运行
复制
$ ps a | grep agetty

 1318 hvc0     Ss+    0:00 /sbin/agetty hvc0 38400 vt100-nav
15339 pts/0    S+     0:00 grep agetty

除非我已经看到了ps a输出的开始,否则我不知道ps a | grep agetty的输出意味着什么。

我可以打印第一行,然后是匹配的行:

代码语言:javascript
运行
复制
$ ps a | head -n1; ps a | grep agetty

  PID TTY      STAT   TIME COMMAND
 1318 hvc0     Ss+    0:00 /sbin/agetty hvc0 38400 vt100-nav
15542 pts/0    S+     0:00 grep agetty

但是,当我不知道有多少头行时,这并不能解决我的问题。是否有一种方法来获取标头和匹配的行,或者有一些简短的解决方法来实现这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-10 08:44:55

这个有用吗?

代码语言:javascript
运行
复制
 ps ..|awk '/yourpattern/ ||!/^\s*[0-9]/'

yourpattern填入位置。

另外,您可以执行ps ...|awk '/agett[y]/ ||....而不是/agetty/来过滤awk进程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26295141

复制
相关文章

相似问题

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