我有一个FQDN,主机名,MAC地址和IP地址的列表。感谢oguz ismail,我可以使用上面的列表并创建新文件:
workstation_list.txt中的主机信息列表:
workstation1
workstation1.domain.com
127.0.0.1
00:00:00:00:00:00
workstation2
workstation2.domain.com
127.0.0.2
11:11:11:11:11:11
所需的输出:
< HOST_NAME >workstation3< /HOST_NAME >
< HOST_FQDN >workstation3.domain.com< /HOST_FQDN >
< IP >127.0.0.0< /IP >
< MAC >33:33:33:33:33:33< /MAC >
oguz ismail https://stackoverflow.com/users/10248678/oguz-ismail给出的代码
awk -v RS='\n\n' '{
print "< HOST_NAME >" $1 "< /HOST_NAME >" > $1
print "< HOST_FQDN >" $2 "< /HOST_FQDN >" > $1
print "< IP >" $3 "< /IP >" > $1
print "< MAC >" $4 "< /MAC >" > $1
close($1)
}' workstation_list.txt
代替创建新文件,我需要替换与现有文件中的“所需输出”匹配的字符串。
有人告诉我sed可能是最简单的方法,但是我不确定如何用sed遍历多个变量。
谢谢您的帮助!
摘要:我不想创建工作站3.xml,而是用更新的工作站3 FQDN,IP,MAC和主机名代替了工作站3.xml中的XMLstrings。