I want to search in a long sentence (more than 1024 letters).
I have one text file (test.txt) which has one long sentence, like this:
afdafglwqgkjrldjl;ewqje;'k;g;je;;;fdsgalsdkf;akslg;safdas.....dasfsd Now I want to check which line contains the word saf. This command just shows the whole sentence:
less test.txt | grep saf Is it possible to get a part of the sentence or should I use a command other than grep?
1 Answer
Not exactly what you were looking for: show the matching lines and highlight the occurences in those lines:
grep --color 'saf' test.txt Options for searching saf and displaying up to 15 characters before and after the occurences found using:
the standard regex syntax, first mentioned by @kamil-maciorowski in his comment on the question:
grep -o '.\{0,15\}saf.\{0,15\}' test.txt | grep saf --colorPerl-compatible regex syntax with the
-Poption, if available:grep -o -P '.{0,15}saf.{0,15}' test.txt | grep --color safextended regex syntax with the
-Eoption, if yourgrephas no-Poption (like e.g. on macOS):grep -o -E '.{0,15}saf.{0,15}' test.txt | grep --color saf