perl ファイルの情報を調べる

#引数をファイル名とみなして、各情報を調べる
#ファイルのテスト
#filetest.pl

if(@ARGV > 0){
    #最初の引数をファイル名とみなす
    print "$ARGV[0] は通常のファイルです\n" if(-e $ARGV[0]);
    print "$ARGV[0] はディレクトリです。\n" if(-d $ARGV[0]);
    print "$ARGV[0] はシンボリックリンクです\n" if(-l $ARGV[0]);
    print "$ARGV[0] はあなたが所有者です。\n" if(-o $ARGV[0]);
    print "$ARGV[0] は名前付きパイプです\n" if(-p $ARGV[0]);
    print "$ARGV[0] は読み込めます。\n" if(-r $ARGV[0]);
    print "$ARGV[0] は書き込めます。\n" if(-w $ARGV[0]);
    print "$ARGV[0] は実行できます。\n" if(-x $ARGV[0]);
    print "$ARGV[0] はバイナリファイルです。\n" if(-B $ARGV[0]);
    print "$ARGV[0] はテキストファイルです。\n" if(-T $ARGV[0]);
    print "$ARGV[0] はソケットファイルです。\n" if(-S $ARGV[0]);
}else{
    print "ファイル名を指定してください\n";
}

#実行結果
# $ perl filetest.pl output.txt
# output.txt は通常のファイルです
# output.txt はあなたが所有者です。
# output.txt は読み込めます。
# output.txt は書き込めます。
# output.txt はバイナリファイルです。
# output.txt はテキストファイルです。

初めてのPerl 第6版

初めてのPerl 第6版