sed를 사용하여 파일의 문자열을 변수로 바꾸는 방법은 무엇입니까?

sed를 사용하여 파일의 문자열을 변수로 바꾸는 방법은 무엇입니까?

다음과 같은 텍스트가 있는 파일이 있습니다.

ipaddress="127.0.0.1"

127.0.0.1을 $ip_add라는 변수로 바꿔야 합니다. 여기서 $ip_add=127.0.0.2 다음 sed 명령이 작동하지 않습니다.

sed -i 's/127.0.0.1/$ip_add/' conf.py

이 명령을 실행하면 텍스트는 다음과 같은 파일입니다.

ipaddress="$ip_address"

도와주세요. 미리 감사드립니다

답변1

따옴표 안에 변수를 사용하는 방법은 다음과 같습니다.

#!/bin/bash
export ip_add=192.168.1.10
echo "This is my ip: '$ip_add'"

또 다른 방법은 이렇습니다

#!/bin/bash
export ip_add=192.168.1.10
echo "This is my ip: ${ip_add}"

두 번째 예에서 작은따옴표를 사용하면 변수가 제대로 대체되지 않습니다.

관련 정보