sed를 사용하여 특수 문자 바꾸기


13

이것은 파일에서 다음 tom과 같이 작동 sam합니다.

sed 's/tom/sam/g' file_1 > file_2

그러나 이것은하지 않습니다 :

sed 's/*****/sam/g' file_1 > file_2

특수 문자 *****를 단어로 바꿉니다 sam. 슬래시로 시도 \*했지만 오류가 발생했습니다.


2
어떤 명령으로 시도 \*했으며 어떤 오류가 발생 했습니까?
cuonglm

나는 sed 's / **** / sam / g'test.txt> test2.txt를 시도하고 오류를 일으킨다 : blackslash \ be the *
Rosebud

1
당신은 모든 특수 문자를 탈출하려고 할 수 있습니다 :sed 's/\*\*\*\*\*/sam/g'
taliezin

답변:


17

특수 문자 \앞에 백 슬래시 를 사용하여 특수 문자를 이스케이프해야합니다 . 예 :

sed 's/\*/t/g' test.txt > test2.txt


0

특수 문자 \앞에 백 슬래시 를 사용하여 특수 문자를 이스케이프해야합니다 . 귀하의 경우 모든 특수 문자를 백 슬래시로 이스케이프 처리하십시오 \.

예 : **** boy is ****

sed 's/\*\*\*\*/sam/g' filename

답변 :

sam boy is sam
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.