Reputation: 289
I need to find a line in a file that starts with an a and the last word in the line ends with an e.
How can I do it with a tool like grep
?
Upvotes: 8
Views: 71125
Reputation: 3
$ grep -E '.*sam.*t' filename
here .* is used for any character that regex can find. here "sam" is the word in my case.
Upvotes: 0
Reputation: 141
Simple answer : use grep.
grep -E "^a.*e$" filename
the ^
indicates the beggining of the line
the $
marks the end of the line
the .*
means any character (the .
) repeated from zero to any number of times (the *
).
Many topics have already answered this questions, like this one.
If you want to know more of searching, you could look more in depth into REGEX.
Upvotes: 3
Reputation: 289725
Just say this:
grep '^a.*e$' file
This means: look for those lines starting (^
) with a
, then 0 or more characters and finally and e
at the end of the line ($
).
$ cat a
hello
and thisfinishes with e
foo
$ grep '^a.*e$' a
and thisfinishes with e
Upvotes: 21