'\''를 sed로 교체

'\''를 sed로 교체

'\''텍스트 파일의 내용을 다른 단어나 문자로 바꾸는 명령을 사용 하고 싶습니다 sed.

사용해 보았지만 sed "s/'\''/×/g"작동하지 않습니다.

누구든지 해결책을 알고 있습니까?

답변1

텍스트 텍스트를 바꾸려면 '\''필요한 경우

sed "s/'\\\\''/new text/g"

\정규식에서 자신을 표현 하려면 이스케이프가 필요하며 \\, 큰따옴표로 묶인 문자열의 일부이므로 각 백슬래시를 두 배로 늘려야 합니다. 작은따옴표를 일치시키려면 큰따옴표로 묶은 문자열을 사용해야 합니다(그리고 작은따옴표로 묶인 문자열에는 작은따옴표를 포함할 수 없습니다).

또는:

sed "s/'[\\]''/new text/g"

문자열은 제공되기 전에 큰따옴표로 묶여 있으므로 [\\]where로 변환됩니다. 정규식에서 대괄호로 묶인 표현식의 백슬래시는 항상 리터럴입니다.[\]sed


주문

sed "s/'\''/×/g"

기능적으로는 다음과 같습니다.

sed "s/'''/×/g"

세 개의 작은따옴표를 문자로 대체합니다 ×.

관련 정보