kitak blog

Kみたいなエンジニアになりたいブログ

あほみたい・・・ワンライナーの話

今日、 とある事情で3つの数値のカラムからなるファイルの1列目と3列目を抜き出したかったんですよ。 何を思ったのか、 突然Perlでやろうと思いたち、 できたものがこれ・・・

use strict;
use warnings;

my $file = shift;

open(my $fh, "<", $file)
    or die "Cannnot open $file: $!";

while(my $line = readline $fh){
    my $c1;
    my $c2;
    my $c3;
    chomp $line;

    ($c1,$c2,$c3) = split(/\s/, $line);

    print $c1, " ", $c3, "\n";
}

close $fh;

久しぶりのPerlです。 あんまり責めないで!(いや、言っていいですよ) まぁ・・・これで要求は満たされたわけですが、 よくよく考えれば、 それawkワンライナーでできるよ、 っていう

cat hoge.dat | awk '{print $1,$3}'

awkじゃなくて、 Perlワンライナーでもいいと思うけども・・・。 なんにせ、 まだまだ未熟だ・・・orz。