使用pipe和bash命令查找模式

时间:2019-01-22 23:59:13

标签: bash

我正在尝试学习bash命令来做一些有用的技巧。

我有一个名为text.txt的文件。我试图使用grepwc -lpipe找出有多少行包含字符串"the"

由于我知道管道将一个命令的输出用作另一命令的输入,因此我的方法是:grep "the" | wc -l text.txt

我当时想使用"the"找到grep,然后使用wc -l返回行。我知道我的方法是错误的,因为它不起作用,我现在正在尝试找出不同的组合。谁能解释什么是正确的方法?

谢谢!

2 个答案:

答案 0 :(得分:3)

grep the text.txt | wc -l

grep命令首先需要读取文件,然后将其通过管道传输到wc

但是,grep还内置了行数,因此您可以缩短它,避免额外的过程和管道:

grep -c the text.txt

答案 1 :(得分:0)

如果您对awk感到满意,请尝试执行一次。

awk '/your_text/{count++}  END{print count}'  Input_file