Как заменить строку в файлах, используя звездочку в форме поиска

Как заменить строку в файлах, используя звездочку в форме поиска

В моих файлах журнала (*.log) я хочу заменить все вхождения:

"INFO=*",

к

"INFO=*;;;",

где *может быть что угодно.

Так, например, "INFO=1234",S-> "INFO=1234;;;",SЕсть ли способ сделать это с помощью sed?

решение1

Используйте захватывающие скобки, чтобы запомнить изменяющуюся часть строки:

sed -i~ 's/\("INFO=[^"]*\)",/\1;;;",/' *.log

Возможно, вам придется добавить gв конце, если в строке встречается более одного слова INFO.

Это не сработает, если * содержит двойные кавычки.

Связанный контент