我正在尝试搜索包含 2 个模式的文件。我猜管道是要走的路,但我做错了什么,因为以下内容不起作用:
ack -l "pattern1" | ack -l "pattern2"
我错过了什么?
最佳答案
我从你的问题中了解到,你想要包含 pattern1 和 pattern2 的文件,即使它们位于不同的行。
这是一种方法:
ack -l pattern2 $(ack -l pattern1)
还有一个:
ack -l pattern1 | ack -l -x pattern2
-x
表示“从标准输入获取要搜索的文件列表,就像我是 xargs
程序一样。” (假设您使用的是 ack 2.x 或更高版本)
关于bash - 如何使用 ack 查找包含两种模式的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29354689/