とか言ってみるテスト。
やりたいことは、ダブルクリックで Perl スクリプトを走らせたいよねーってこと。
前提は Perl がインストールされていることですが、「引数が無い場合は標準入力から読む」というルールを満たしていれば、Cygwin でも ActivePerl でも オレオレ Perl でも何でも OK です。Ruby とかでも使えるハズ。
で、まぁどんな感じかというと...
@MORE.COM +1 %0 | perl & PAUSE & GOTO :EOF
for(my $i = 97; $i < 123; $i++) {
print chr($i);
}
print "\n";
# とかなんとか、好きな Perl スクリプトがここに入る。
とやって、拡張子 BAT で保存する。
最初の行が @MORE.COM なのは、Cygwin の more.exe とバッティングするのを防ぐためです。PAUSE は削除してもよいでしょう。
*
ということで、perl コマンドにパスが通っていることが確実な場合は、UNIX の shebang line よろしく、 一つのファイルで(しかもバッチファイルに見えるファイルで)、テンポラリファイルも使わずに、高機能なテキスト処理のできるパッチが書ける、ということですね!やった!
*
最初はもっと hacky な方法でやってたんだけど、ヘルプを読んだらこんなにシンプルにできることが分かってちょっとしょんぼり。
でもせっかく途中まで書いた記事だからつまらないけど公開しちゃえ、、、そんなノリです。