6列を転置すると、他の列は同じ

6列を転置すると、他の列は同じ

このようなファイルがあります。

a|b|c|d|e|1|2|3|4|5|f|g|h

次の結果が必要です

a|b|c|d|e|1|f|g|h  
a|b|c|d|e|2|f|g|h  
a|b|c|d|e|3|f|g|h  
a|b|c|d|e|4|f|g|h  
a|b|c|d|e|5|f|g|h  

デフォルトでは5つの列を転置しようとしますが、残りの列はこれら5つのプロパティのそれぞれに対して繰り返されます...属性)行...これらの5行すべてでa、b、c、d、e、f、g、hが繰り返されます。

AWK/SED/CUTを使って何でも助けてください。

ベストアンサー1

アッ解決策:

awk -F'|' '{ for(i=6;i<=10;i++) print $1,$2,$3,$4,$5,$i,$11,$12,$13 }' OFS='|' file

出力:

a|b|c|d|e|1|f|g|h
a|b|c|d|e|2|f|g|h
a|b|c|d|e|3|f|g|h
a|b|c|d|e|4|f|g|h
a|b|c|d|e|5|f|g|h

  • for(i=6;i<=10;i++)- メインフィールドを繰り返します。

おすすめ記事