I\'m trying to use SED to extract text from a log file. I can do a search-and-replace without too much trouble:
sed \'s/foo/bar/\' mylog.txt
<
If you are doing pattern matching first, e.g.,
/pattern/s/xx/yy/g
then you want to put the I
after the pattern:
/pattern/Is/xx/yy/g
Example:
echo Fred | sed '/fred/Is//willma/g'
returns willma
; without the I
, it returns the string untouched (Fred
).
Editor's note: This solution doesn't work on macOS (out of the box), because it only applies to GNU sed
, whereas macOS comes with BSD sed
.
Capitalize the 'I'.
sed 's/foo/bar/I' file