sed正则中使用变量问题
使用下列正则替换时,IP没有生效。
new_ip=172.16.2.21
sed -i 's/172.16.2.20/$new_ip/' ./java_api/config/application.yml
解决:把正则中的$new_ip,使用单引号引起来:'$new_ip',即:
sed -i 's/172.16.2.20/‘$new_ip’/' ./java_api/config/application.yml
拓展,想在正则中使用变量的方法:
1. eval sed ‘s/$a/$b/’ filename
2. sed “s/$a/$b/” filename
3. sed ’s/‘$a’/’$b’/’ filename
4. sed s/$a/$b/ filename
结束。