Вы можете использовать
sed -i -E 's/DST=123\.12\.12\.[0-9]{1,3}/DST=xxx.xxx.xxx.xxx/g' file
См. онлайн-демонстрацию
Обратите внимание, что .
символов следует экранировать, если вам нужно сопоставить буквенные точки.
Шаблон, совместимый с [0-9]{1,3}
POSIX ERE (активируется с помощью -E
), будет соответствовать 1, 2 или 3 цифрам.
Чтобы убедиться, что вы соответствуете только 3 цифрам в конце, за которыми не следуетдругие цифры, и что вы соответствуете DST
, а не ADST
, вы можете попробовать добавить границы слов, \<
и \>
:
's/\<DST=123\.12\.12\.[0-9]{1,3}\>/DST=xxx.xxx.xxx.xxx/g'
^^ ^^