わたなべです。
"T.Watanabe" <wtnabe@...> writes:
> > また、.bat以外にも.cmdでバッチファイルが書けますし、登録さえしておけば、
> > .pyとか.awkとか自由に設定できます。
>
> マジすか!?
>
> 連載:Windows 2000コマンドライン徹底活用 第3回 スクリプト入門 (その1)
> http://www.atmarkit.co.jp/fwin2k/operation/command003/command1.html
>
> かな? 環境変数 PATHEXT ?
> あ、違うか、関連づけ?
>
> 簡単に手順を教えてもらえませんか。わざわざ SOS で .com 化してました(^^;
assocとftypeを使います。あえてそのまま間違ったとこも載せとこう。
D:\tmp>assoc .awk=AwkScript
.awk=AwkScript
D:\tmp>ftype AwkScript=d:\cygwin\bin\gawk.exe %1 %*
AwkScript=d:\cygwin\bin\gawk.exe %1 %*
D:\tmp>echo BEGIN{print "Hello, World"} > hello.awk
D:\tmp>set PATHEXT=%PATHEXT%;.awk
D:\tmp>hello
gawk: D:\tmp\hello.awk
gawk: ^ syntax error
gawk: D:\tmp\hello.awk
gawk: ^ backslash not last character on line
D:\tmp>ftype AwkScript=d:\cygwin\bin\gawk.exe -f %1 %*
AwkScript=d:\cygwin\bin\gawk.exe -f %1 %*
D:\tmp>hello
Hello, World
すでに関連付けされていれば例の@itの記事の通りPATHEXTだけでいいです。
たとえば
set PATHEXT=%PATHEXT%;.TXT
とすればreadme.txtもreadmeだけで開けます。
ただしリダイレクトすると標準入力の扱いはなんか変です。
D:\tmp>echo 1 > xcat.awk
D:\tmp>xcat hello.awk
BEGIN{print "Hello, World"}
D:\tmp>xcat < hello.awk
このあたりはruby-talkでも頻繁に話題になってる。たぶんMSのバ
グだろうと。
--
わたなべひろふみ