![使用 grep 显示文件名](https://linux22.com/image/68593/%E4%BD%BF%E7%94%A8%20grep%20%E6%98%BE%E7%A4%BA%E6%96%87%E4%BB%B6%E5%90%8D.png)
我正在寻找一种在使用此命令时显示文件名的方法:
cat *.tcp | grep "tcp" | grep "open" | sort | uniq
有办法做到吗?
答案1
grep tcp *.tcp | grep open | sort -u
默认情况下,给予多个文件名将grep
导致 grep 在匹配的输出行前加上它们匹配的文件名的前缀。我所做的唯一其他更改是合并到sort | uniq
(sort -u
并删除此处不必要的引号)。
答案2
grep -H 'tcp'
-H, --with-filename 打印每个匹配的文件名。当有多个文件需要搜索时,这是默认设置。