#use strict; use warnings; my $File1 = <) { chomp; push @{$data[-1]}, $_; } } while (grep {@$_} @data) { printf "%s\n", join "\t", map {$_ // ''} map {shift @$_} @data; }