【发布时间】:2018-04-23 09:21:50
【问题描述】:
我的开发环境设置是这样的,它要求我在 /etc/host 文件中具有特定的主机名到 localIP 条目。(原因是多个微服务和存储,即 Cassandra 和 Redis 绑定到主机名) 我创建了这个简单的 bash 脚本
newIP=`ip a | grep wlp5s0 | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" | head -1`
echo $newIP
oldIP=`ping -q -c 1 -t 1 dummy | grep PING | sed -e "s/).*//" | sed -e "s/.*(//"`
echo $oldIP
sed -i 's/$oldIP/$newIP/g' /etc/hosts
虽然这是打印正确的 ip,但没有发生替换 ,在我看来是 sed 的问题,但不确定
【问题讨论】: