首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在“grep”结果中包括标头

在“grep”结果中包括标头
EN

Stack Overflow用户
提问于 2012-10-17 01:32:48
回答 6查看 21.5K关注 0票数 22

对于一个目录中的所有文件,有没有办法将'head -1‘和'grep’命令组合成一个命令,并将输出重定向到输出文件。我可以使用'sed‘来做这件事,但是它似乎没有grep那么快。

代码语言:javascript
复制
sed -n '1p;/6330162/p' infile*.txt > outfile.txt

使用grep,我可以一次执行以下一个文件:

代码语言:javascript
复制
head -1 infile1.txt;  grep -i '6330162' infile1.txt > outfile.txt

但是,我需要对目录中的所有文件执行此操作。插入通配符没有任何帮助,因为它先打印报头,然后打印grep输出。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-10-17 01:36:38

代码语言:javascript
复制
for file in *
do
  [ "$file" = outfile.txt ] && continue
  head -n 1 "$file"
  grep -i '...' "$file"
done > outfile.txt
票数 3
EN

Stack Overflow用户

发布于 2013-10-14 17:07:18

下面的代码意味着您只需要输入一次命令(而不是使用&&并输入两次),它也很容易理解。

代码语言:javascript
复制
some-command | { head -1; grep some-stuff; }

例如:

代码语言:javascript
复制
ps -ef | { head -1; grep python; }

更新:这似乎只适用于ps,抱歉,但我猜这通常是人们想要的。

如果你想让它对任意命令起作用,似乎你必须写一个迷你脚本,例如:

代码语言:javascript
复制
#!/bin/bash

first_line=true

while read -r line; do
    if [ "${first_line}" = "true" ]; then
        echo "$line"
        first_line=false
    fi
    echo "$line" | grep $*
done

然后,您可以像这样使用:

代码语言:javascript
复制
ps -ef | ./hgrep.sh -i chrome

这种方法的好处是我们使用了grep,所以所有的标志都是完全一样的。

票数 38
EN

Stack Overflow用户

发布于 2018-05-07 05:45:30

这将通过使用单个接收命令来工作:

代码语言:javascript
复制
some-command | sed -n '1p;/PATTERN/p'

这也很容易与多行标题一起使用:

代码语言:javascript
复制
$ sudo netstat --tcp --udp --listening --numeric --program | sed --quiet '1,2p;/ssh/p'
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1258/sshd           
tcp6       0      0 :::22                   :::*                    LISTEN      1258/sshd           

对于reiterate来说,@samthebest的解决方案只能在非常特定的情况下工作;这将适用于任何写入标准输出的命令。

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

https://stackoverflow.com/questions/12920317

复制
相关文章

相似问题

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