using 을 모두 
로 바꿔야 합니다 . 다음 내용이 유효합니까, 아니면 사용해야 합니까 ?0x02
sed
\
sed -i -E "s/<>/<0x02>/g" $output_file
그렇다면 어떻게 해야 합니까?
답변1

문자열이 명령의 패턴 부분에서 문자 그대로 해석 되도록 문자열에 이스케이프해야 하는 특수 문자가 없습니다 .s///
sed
또한 대체 문자열에는 특별한 처리가 필요한 특수 문자가 없습니다 0x02
(GNU를 사용하는 경우 대체 문자열의 특수 문자 는 &
특수 문자 등이 됩니다 ).\1
\2
\n
\t
sed
이것은 당신이 할 수 있어야한다는 것을 의미합니다
sed 's//0x02/g' inputfile >outputfile
특별한 처리가 필요할 수 있는 유일한 방법은 
하위 문자열의 대체를 피하는 것입니다. 예를 들어 #
질문에 예제 문서가 표시되지 않으므로 이것이 문제가 될지, 이를 방지하는 최선의 방법을 정확히 말할 수 없습니다.
일반적으로 말하면,아니요실수로 데이터가 손실되는 것을 방지하기 위해 편집 표현식이나 스크립트를 사용할 수 있다는 것을 알 때까지 -i
with 옵션을 사용하십시오 . 여기서도 확장 정규식을 전혀 다루지 않으므로 여기서도 그럴 필요가 없습니다 .sed
sed
-E
sed
이름이 변수에 저장된 파일에 대해 명령을 실행하는 경우 해당 변수의 확장을 큰따옴표로 묶어야 합니다(참조:공백이나 기타 특수 문자 때문에 쉘 스크립트가 멈추는 이유는 무엇입니까?).