Linux附加到文件中的单行

时间:2014-09-05 08:24:38

标签: linux awk append line

我运行了以下命令,该命令输出eth0的当前IP地址,并将输出发送到名为ip.txt的文本文件

ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1 > ip.txt

我有第二个配置文件。我想将新创建的文件ip.txt中的文本附加到此文件的第2行的末尾。文件2具有以下数据:

[root@******]# cat File2.txt
Device=
IPADDR=
NETWORK=
NETMASK=
.......

我需要它看起来像这样

[root@******]# cat File2.txt
Device=
IPADDR=someip
NETWORK=
NETMASK=
.......

这可能是使用AWK或sed,但我似乎无法使其正常工作。你能帮忙吗?

2 个答案:

答案 0 :(得分:0)

sed -i "s/IPADDR=/IPADDR=`cat ip.txt`/g" File2.txt

答案 1 :(得分:0)

你可以尝试下面的awk命令,

$ awk -v var=$(awk '{print $0}' ip.txt) '/IPADDR=/{$2=var; print$1$2}!/IPADDR=/{print}' File2.txt
Device=
IPADDR=someip
NETWORK=
NETMASK=