このようなものをワンライナーとしてどのように書くべきですか?
-loop whileand内のすべてを取りたくなるでしょうが、ステートメントを使用perl -e '...' dataするより良い方法はありifますか?
open(F, '<', 'data') or die $!;
while (my $line = <F>) {
if ($line =~ m/test /) {
my @a = split / /, $line;
printf("%2s %4s %4s\n", substr($a[1], 1), $a[2], substr($a[5], 0, -1));
} else {
print $line;
}
}
close F;