쉘스크립트 질문이요

dalili의 이미지

DATA_PATH="/root/abc/"
file=`cat $DATA_PATHabc.txt | sed s/abc/$DATA_PATH/g`

이런식으로 스크립트를 짜려고 하는데요
DATA_PATH에 '/' 가 포함되어서 sed 명령어 할때 에러가 나네요

sed에는 s/ / /g 이렇게 '/' 가 3개 들어가야하는데 DATA_PATH에 /가 포함되다 보니까 문법 오류가 발생합니다

어떻게 해야 사용가능할까요?

terzeron의 이미지

패턴 간의 구분자로 / 대신에 @를 써서 할 수 있습니다.

DATA_PATH="/root/abc/"
file=`cat $DATA_PATHabc.txt | sed s@abc@$DATA_PATH@g`