1. 程式人生 > >如何在文件倒數位置插入文本?

如何在文件倒數位置插入文本?

sed shell. 變量

假設我有一個文件是長這個樣子的:

<Group>
  <Server>1.2.3.4:8801</Server>
  <Server>5.6.7.8:8801</Server>
  <Server>9.9.9.9:8801</Server>
</Group>


現在我要在倒數第二行插入新的IP地址,同時又不能破壞格式,那麽使用的方法就是:

read -p "請輸入您要新增的P2PServer的外網ip地址:" ip
sed -i ‘$i ‘"\  <Server>$ip:8801</Server>"‘‘ 文件的絕對地址


#sed -i 默認情況下對於新插語句是不含開頭的空格的,但是前面加上了“\”,就把問題解決了。


如果我要把test.xml文件裏的10改成1000,那麽就使用#sed -i ‘s/10/1000/g’ test.xml,但是如果需要把1000改成變量,如#sed -i ’s/10/$num/g‘ test.xml就不成功。


此時需要把單引號改成雙引號,如下邊例子:

$num=1000
sed -i "s/10/$num/g" test.xml


本文出自 “生活就是等待戈多” 博客,請務必保留此出處http://chenx1242.blog.51cto.com/10430133/1967288

如何在文件倒數位置插入文本?