문자열을 찾아서 제거하려면 다음 명령줄이 있습니다 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 번 이상인 것을 의미합니다.)