我有一个模式如何使用perl/shell脚本替换文本?
猫sample.text
\newline</Text>
我使用下面的命令:
sed ':a; N; $!ba; s|\newline</Text>|</Text>|g' sample.text
,但下面的命令不能正常工作。
我有一个模式如何使用perl/shell脚本替换文本?
猫sample.text
\newline</Text>
我使用下面的命令:
sed ':a; N; $!ba; s|\newline</Text>|</Text>|g' sample.text
,但下面的命令不能正常工作。
这可能会为你工作(GNU SED):
sed '$!N;s/\n\(<\/Text>\)/\1/;P;D' file
或
sed -r '$!N;s|\n(</Text>)|\1|;P;D' file
但是,如果\newline
是文字:
sed 's/\\newline\(<\/Text>\)/\1/g' file
或
sed -r 's|\\newline(</Text>)|\1|g' file
会工作得很好。
我刚刚发现解决方案,我自己想和大家分享。
sed ':a; N; $!ba; s|\\newline<\/Text>|</Text>|g' sample.text
你只是想摆脱</Text>
之前的换行符?这只是一个简单的替换:
gawk -vRS='\0' -vORS= '{gsub(/\n<\/Text>/,"</Text>")}1' file