次のデータがあります。
abc
123
456
789
def
111
222
333
ghi
999
888
777
666
つまり、レコードは複数行で区切られていますが、位置が間違っています。私が望むのは、次のようにすることです。
abc
123
456
789
def
111
222
333
ghi
999
888
777
666
awkで設定しようRS
としましたが、\n\n\n
結果としてレコードが誤って切り捨てられました。そのabc
用語は、現在のレコードの最初のフィールドではなく、以前のレコードの最後のフィールドで終わりました。
sed
また、1行ずつ動作するので、どのように使用するのかわかりません。
ベストアンサー1
努力する
awk '!NF {next} /[^0-9]/ {printf XRS; XRS = ORS} 1' file2
abc
123
456
789
def
111
222
333
ghi
999
888
777
空の行を削除します(あなたの仕様では、この行は実際には空で空白がないことを読みました)。次に、レコードヘッダを表す数字以外の数字があることを確認し、最初の行を除いて改行を印刷します。空の文字列。