Linux 我想在config.xml文件中添加3行sed或awk命令
我有一台linux centos 7服务器,我想在下面几行中使用sed命令以config.xml名称归档Linux 我想在config.xml文件中添加3行sed或awk命令,linux,unix,awk,sed,Linux,Unix,Awk,Sed,我有一台linux centos 7服务器,我想在下面几行中使用sed命令以config.xml名称归档 谷歌 google.com,www.google.com 我想在config.xml文件的第10行之后添加这几行 我想在centos7添加一个命令,可能吗? 我已经搜索过了,我发现这可以通过sed或awk命令实现 如何使用sed或awk命令执行此操作?GNU-sed: sed '10a <vhostMap>\n <vhost>google</vhost&g
谷歌
google.com,www.google.com
我想在config.xml文件的第10行之后添加这几行
我想在centos7添加一个命令,可能吗?
我已经搜索过了,我发现这可以通过sed或awk命令实现
如何使用sed或awk命令执行此操作?GNU-sed:
sed '10a <vhostMap>\n <vhost>google</vhost>\n <domain>google.com,www.google.com</domain>\n</vhostMap>' config.xml
sed'10a\n google\n google.com,www.google.com\n'config.xml
与awk几乎相同:
awk '{ print $0 ; if(NR == 10) printf "<vhostMap>\n <vhost>google</vhost>\n <domain>google.com, www.google.com</domain>\n</vhostMap>\n" }' config.xml
awk'{print$0;if(NR==10)printf“\n google\n google.com,www.google.com\n\n”}”config.xml
这可能适合您(GNU-sed和shell):
cat将config.xml添加到你的问题中。我相信你几个小时前也问过同样的问题。@Cyrus你的意思是什么?@Błotosmętek正确,但现在我看起来是用命令行完成的,而不是代码并保存在python文件中,明白吗?我想用命令行完成这项工作,一旦我运行了命令,它就完成了。然后请从标记列表中删除“python”和“perl”…它只是将我显示为输出,但当我打开文件config.xml时,该文件上就没有这行了,如果我想把这几行放在config.xml文件中,我应该怎么做使用sed-i
和-i
或--in-place
选项。它只是将我显示为一个输出,但当我打开config.xml文件时,这几行就不在该文件中了,如果我想把这几行放在config.xml文件中,我应该怎么做,当然-标准awk
没有--inplace
选项。您需要将输出保存在某个临时文件中,然后将其内容移动到config.xml。
cat <<\! | sed '10r /dev/stdin' file
<vhostMap>
<vhost>google</vhost>
<domain>google.com, www.google.com</domain>
</vhostMap>
!