テキストファイルがあります列.txt以下のように2つの列があります。
1 1.1
2 4.0
3 3.2
start newset
1 2.2
2 6.1
3 10.3
4 2.1
start newset
1 18.2
2 4.3
次の場合、新しい列のペアを作成するには、それらを複数の列に変換する必要があります。ニュース収集開始到着しました。だから私が望む出力テキストファイルは次のようになります。 (文字列のある行を削除したいです。ニュース収集開始):
1 1.1 1 2.2 1 18.2
2 4.0 2 6.1 2 4.3
3 3.2 3 10.3
4 2.1
ベストアンサー1
これを試してみてください。
awk '
/^start newset/ {
max = max>i ? max : i
i = 0
set++
next
}
{
++i
a[i][set] = $0
}
END {
for( i=1 ; i<=max ; i++ ) {
for( j=1 ; j<=set ; j++ )
b = b OFS a[i][j]
sub( "\t" , "" , b )
print b
b=""
}
}
' set=1 OFS='\t' column.txt