Измените команду, чтобы найти любой текст

Измените команду, чтобы найти любой текст

У меня есть эта строка команды для поиска и удаления строки: text_to_remove(SOME_VALUE).

find . -type f -name "*php" -exec sed -i 's/text_to_remove(SOME_VALUE)//' {} \+

Работает отлично, но проблема в том, что «SOME_VALUE» может быть любым текстом. Есть ли способ изменить эту строку, чтобы она принимала любое значение в «SOME_VALUE»?

решение1

Предполагая, что SOME_VALUEникогда не содержит закрывающуюся скобку, вы можете использовать

find . -type f -name "*php" -exec sed -i 's/text_to_remove([^)]*)//' {} \+

( [^)]*означает любой символ, который не является ), 0 или более раз.)

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