如何正确使用sed使用变量将文本插入文件?
MYNIC_IP=`ip addr show eth0 | grep eth0 | awk '{ print $2; }' | sed 's/\/.*$//'`
好酷。
echo $MYNIC_IP
eth0: 172.31.43.190
sudo sed -i -e '1i'$MYNIC_IP /usr/share/nginx/html/index.html
这导致部分变量被添加......只是eth0:
答案 0 :(得分:0)
你需要引用它,以便sed看到包含空格的单个字符串:
sed -i -e "1i\\
$MYNIC_IP"
使用双引号,您仍然可以在里面使用变量,它们将被扩展。