perlスクリプトをドラッグ&ドロップで実行する

処理対象ファイルをバッチファイルにドラッグ&ドロップすると、そのファイルを引数にしてperlスクリプトが実行される。

例:WindowsのパフォーマンスモニタのログをCSVに変換する場合
処理対象ファイル(SystemLog20090122_000004.blg)をバッチファイル(feedme.bat)にドラッグ&ドロップすると、そのファイルを引数にしてperlスクリプト(myscript.pl)が実行され、CSVファイル(20090122.csv)が作成される。

file name: feedme.bat

rem "myscript.pl"を書き換えてご使用ください
echo off
cd /d %0\..
perl myscript.pl %1
pause

file name: myscript.pl

#パフォーマンスモニタのログファイルをCSV形式に変換する
use strict;
use warnings;

my $input       = $ARGV[0];
$input          =~ /SystemLog([\d]+)/;
my $output      = $1 . '.csv';

print '$input: ' . $input . "\n";
print '$output: ' . $output . "\n";
system("relog $input -f csv -o $output\n");

__END__