サードパーティのシステムからのファイルがありますが、少し修正する必要があります。今後のファイルには、データの途中に改行文字が含まれることがあります。この破損した行を見つけることができたとしましょう。私がする必要があるのは、単に改行文字を削除し、その行を上の行と結合することです(これは、改行文字を削除するときに発生します)。次に例を示します。
data_1 data_2 data_3 data_4 data_5
data_1 data_2 data_3 data_4 data_5
data_1 data_2
data_3 data_4 data_5
data_1 data_2 data_3 data_4 data_5
data_1 data_2 data_3 data_4 data_5
data_1 data_2 data_3 data_4 data_5
ご覧のとおり、3行目は間違っており、改行文字を削除して4行目で修正/結合する必要があります。「間違った」(短すぎる)行を見つけることができる簡単なスクリプトがあります。問題は、特定の行から改行文字を削除する方法です(行番号が間違っています)。
前の3が行番号であるsed( sed ':a;N;$!ba;3s/\n/ /' data.log
)で試しましたが、機能しません。s
...または多分この問題のより良い解決策があります。助けてください。