ここでいくつかの答えを見ましたが、それらをうまく機能させることはできません。次のようなテキストがあります。
line1
line2 text=^M
line3
line4
基本的に必要なのは、の=^M\nような空の文字に置き換えることなs/=^M\n//ので、出力は (^M は特殊文字 ctrl+v ctrl+m です)
line1
line2 textline3
line4
いくつかの sed ブランチであることは知っていますが、それらを機能させるのに問題があります。
ここでいくつかの答えを見ましたが、それらをうまく機能させることはできません。次のようなテキストがあります。
line1
line2 text=^M
line3
line4
基本的に必要なのは、の=^M\nような空の文字に置き換えることなs/=^M\n//ので、出力は (^M は特殊文字 ctrl+v ctrl+m です)
line1
line2 textline3
line4
いくつかの sed ブランチであることは知っていますが、それらを機能させるのに問題があります。
一方通行:
$ sed '/^M/{N;s/=^M\n//;}' file
line1
line2 textline3
line4
ここで、^ Mは次のように入力する必要があります:Ctrl-V + Ctrl-M
このための awk ソリューション
#awk -f myawk.sh temp.txt
BEGIN { print "Start Records"}
{
if ($2 ~ /=\^M/){
a=$1;
gsub("=\\^M","",$2);
b=$2; f=1
}
else {
if(f==1){
print a""b""$0;
a="";
b="";
}else{
print $0
}
}
}
END {print "Process Complete"}