Unix 在单行上为特定子字符串设置awk,然后合并

Unix 在单行上为特定子字符串设置awk,然后合并,unix,awk,Unix,Awk,我有几个XML文件,所有内容都在一行中。我想将不同文件的和标记之间的部分合并到一个文件中。是否可以使用awk执行此操作?请尝试 cat*|awk-F”“{print$2;}'|awk-F”“{print$1;}>output.txt很难看出针对输入文件中的小错误必须做些什么。grep-o解决方案将无法在一行上输入两个段落,当找到并且缺少时,您想要什么? 尝试awk(对@James的评论)或sed: sed 's#</p1>#\n#g' xmlfiles | sed -n '/<

我有几个XML文件,所有内容都在一行中。我想将不同文件的
标记之间的部分合并到一个文件中。是否可以使用awk执行此操作?

请尝试
cat*|awk-F”“{print$2;}'|awk-F”“{print$1;}>output.txt

很难看出针对输入文件中的小错误必须做些什么。
grep-o
解决方案将无法在一行上输入两个段落,当找到
并且缺少
时,您想要什么?
尝试
awk
(对@James的评论)或
sed

sed 's#</p1>#\n#g' xmlfiles | sed -n '/<p1>/ s#.*<p1>##p'
sed的###\n#g'xmlfiles | sed-n'//s#.##p'

试试这个:
grep-o'.*'inputfile*>outputfile
是的,很可能是这样,不过您需要给我们展示一个例子,让您的问题更清楚。看看你到目前为止都做了些什么也很好。请记住,AWK不是为处理XML而设计的,因此当输入发生变化时,任何解决方案都可能会中断。这与主题无关,因此……该方法可以实现为:
AWK-v RS=“(|”)”'FNR%2==0{print$1}'*.XML