bate's blog

調べたこと実装したことなどを取りとめもなく書きます。

perlでフィールド抽出

ls -l > ls.txt
でテキストデータを作っておいて、第8フィールドのファイル名を取得するスクリプト
sampling.pl というスクリプトだとして、実行は下記のようになる
./sampling.pl ls.txt
次はリダイレクトできるようにする

#!/usr/bin/perl

foreach $file (@ARGV) {
        open IN, $file or die "cannot open $file ($!)";

        chomp(@line = <IN>);

        foreach (@line)
        {
                s/[\r\n]//g;
                @field = split(/ +/,$_);
                printf("%s\n", $field[7]);
        }

        close IN;
}

exit;