本地web开发过程中,经常需要配置虚拟主机名(域名)进行测试,如hosts配置自定义域名test.dev映射到本机127.0.0.1:
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
127.0.0.1 test.dev
操作shell命令快捷同步内网ip到hosts中
# 获取本机内网ip
new_ip=`ifconfig eth0 | grep inet | awk '{print $2}'`
# 获取本机hosts中配置的自定义域名映射记录的ip
old_ip=`grep test.dev /etc/hosts | awk '{print $1}'`
# 替换旧ip为新ip
sed -i "s/$old_ip/$new_ip/g" /etc/hosts
附mac同步本机局域网ip脚本:
#!/usr/bin/env bash
new_ip=`ifconfig en0 | grep "inet" | grep -v "inet6" | awk '{print $2}'`
old_ip=`grep "test.dev" /etc/hosts | awk '{print $1}'`
sudo sed -i "" "s/$old_ip/$new_ip/g" /etc/hosts && echo 'success' || echo 'failure'
如此,因局域网ip经常变化的问题,即可在crontab中加入任务定时同步ip来解决