カンマ区切りフィールドを別々の行に分割する方法

カンマ区切りフィールドを別々の行に分割する方法

入力ファイル:

A    B       C    D
1   2,3,4,5 6,7 8,9,10,11

結果ファイル:

A       B     C     D
1       2     6     8
        3     7     9
        4           10
        5           11

ベストアンサー1

perl -MList::Util=max -lane '
  @F = map {[split /,/]} @F;
  $n = max map {scalar @$_} @F;
  foreach $i (0..$n-1) {print join "\t", map {$_->[$i]} @F};
' file

おすすめ記事