Если Python на самом деле не является одним из ваших требований, это также решает проблему:
sed -i 's/\([0-9]\{1,3\}\)\.\([0-9]\{1,3\}\)\.[0-9]\{1,3\}\.[0-9]\{1,3\}/\1.\2.xxx.xxx/g' mylogfile.log
Или Perl, который позволяет избавиться от большинства уродливых обратных косых черт:
perl -i -pe 's/(\d{1,3})\.(\d{1,3})\.\d{1,3}\.\d{1,3}/$1.$2.xxx.xxx/g' mylogfile.log
Но здесь нет флага "inline" -i
.