사용자에게 원래 IP와 새 IP를 묻는 스크립트를 작성 중입니다. CLI에서 sed를 작동시킬 수 있지만 사용자가 액세스를 위해 웹 서버에서 공용 IP를 업데이트할 수 있도록 스크립트를 만들고 싶습니다.
다음 오류가 발생하지만 EOF를 찾는 이유를 모르겠습니다.
./UpdateIP.sh: line 24: unexpected EOF while looking for matching `''
./UpdateIP.sh: line 25: syntax error: unexpected end of file
이것은 내 스크립트입니다.
#!/bin/bash
# This script will change the IP address from x.x.x.x TO y.y.y.y
configs=/root/test.conf
echo "Please enter the IP Address to change:"
# Ask user to input for IP address
read origip
echo "Please enter the NEW IP Address to be changed to:"
read newip
echo "The original IP in the lines below will be changed FROM:
sed 's/$(origip)/$(newip)/' $(configs) | grep $(origip)
echo "TO:"
sed 's/$(origip)/$(newip)/' $(configs) | grep $(newip)
read -p "Press [Enter] key to start updating IP's..."
답변1
다음 스크립트를 사용하여 새 IP 주소를 업데이트할 수 있습니다.
테스트를 거쳤으며 훌륭하게 작동합니다.
script
#!/bin/bash
echo "enter the old ip adress which need to change"
read oldip
echo "enter the new ip adress"
read newip
sed -i "s/$oldip/$newip/g" configfilename