查找以一个特定字符开头并以另一个字符结尾的行

时间:2015-03-06 13:02:07

标签: unix grep pattern-matching

我需要在一个以 a 开头的文件中找到一行,并且该行中的最后一个单词以 e 结尾。

如何使用grep等工具完成此工作?

2 个答案:

答案 0 :(得分:11)

请说出来:

grep '^a.*e$' file

这意味着:查找那些以^开头(a),然后是0个或更多字符的行,最后在行尾e $ )。

测试

$ cat a
hello
and thisfinishes with e
foo
$ grep '^a.*e$' a
and thisfinishes with e

答案 1 :(得分:2)

简单回答:使用grep。

grep -E "^a.*e$" filename

^表示该行的开始 $标志着该行的结束 .*表示从零到任意次重复的任何字符(.)(*)。 许多主题已经回答了这些问题,例如this one。 如果您想了解更多搜索内容,可以更深入地了解REGEX