How can I display the next two characters from sed results (wildcard characters and then stop the results)?
echo 'this is a test line' | sed 's/^.*te*/te../'
Expecting test
Actual results te.. line
CodePudding user response:
You can use
sed -n 's/.*\(te..\).*/\1/p' <<< 'this is a test line'
See the online demo. Here,
-n- suppresses the default line output.*\(te..\).*- matches any zero or more chars, then captured into Group 1teand any two chars, and then matches the rest of the string\1- replaces the whole match with the value of Group 1p- only prints the result of the substitution.
