GnuWin32 Packages

cygwinWindows環境の中にunix租界を作る感じでいやなので自宅のPCには入れてない。
grep,gawk,sed,gzip等のツールはVector等から個別にさがして入れている。
そのほかのツールは、bat や Ruby で作ったりしていたのだが、souceforgeに"GnuWin32 Packages"というのを見つけたので、その中の Core Utils を入れてみた。gnu の file utils, text utils, shell utils をまとめたものである。

http://gnuwin32.sourceforge.net/packages.html

なかなかちゃんとしている。ls -l で .lnk ファイルをシンボリックリンクのごとく扱ってリンク先が表示されるのは嬉しい(cygwinではそうでない)。ちょっと使った感じでおかしいのは、ls -F で実行可能ファイルに * 印をつけるのが、拡張子が .exe .com .bat .cmd しか対象でない。PATHEXTを参照すべきではないか。もしかしたら拡張子関連付けを見るべきなのかもしれない。いやそこまでいくと、.doc とかも含まれちゃうんで、やっぱりPATHEXTくらいが適当か。そうでなければ、「ファイルの実行可能属性が存在しないので、* は一切つけない」というのも潔い。
ただ、strings ls.exe してみると、PATHEXT の文字列が…。何に使っているのかな。

当然grep,gawk,sed,gzip等もあるが、今のところ現状のソフトで困っていないのでこのまま。でも今度新しいPCに買い換えた時には、個別に入れるのは面倒なのでこれを入れるんだろうな。