다음 배치가 있습니다
#! /bin/bash
PATTERN1="MACRO"
PATTERN2="HI"
sed -e "s/${PATTERN1}/${PATTERN2}/g" config.conf
따라서 config.conf 파일의 내용은 다음과 같습니다.
ABC DEF ERF 매크로 ERR 매크로
따라서 명령의 출력은 다음과 같습니다.
ABC DEF ERF HI ERR HI
그러나 원하는 출력은
ABC DEF ERF 매크로 ERR HI
즉, 동일한 줄에 공백이나 다른 단어없이 한 줄에 정확히 일치하는 패턴으로 만 패턴을 교체해야합니다.
정확히 일치 시킬 패턴을 추가 ^
하고$
예를 들어 : 다음 중 하나를 수행 할 수 있습니다.
sed -e "s/^${PATTERN1}$/${PATTERN2}/g" ...
또는 원래 sed 라인을 사용하여 다음을 수정하십시오 PATTERN1
.
PATTERN1="^MACRO$"
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다