使用grep bash打印出现文本的行

时间:2012-07-20 21:37:01

标签: bash grep

我想为某些文本grep一个文件,并仅输出它出现的行号。例如:

File.text:

firstsentance
secondsentance
thirdsentance

如果我要求同意,我应该收到2的输出。

4 个答案:

答案 0 :(得分:6)

这将做你想要的:

sed -n '/secondsentence/=' File.text

的Perl:

perl -lne 'print $. if /secondsentence/' File.text

答案 1 :(得分:3)

我不相信grep本身就有这样的功能,但你可以这样写:

grep -n secondsentance File.text | sed 's/:.*//'

:开始剥离所有内容。

请注意,这与单独grep的退出代码不同。

答案 2 :(得分:2)


尝试学习AWK:

awk '/secondsentance/ { print NR }' file.text

答案 3 :(得分:1)

一个awk解决方案。

awk '/secondsentance/ { print NR }' file