理系学生日記

おまえはいつまで学生気分なのか

cygwin には cygpath というプログラムが付属してくる

例に違わずうちの会社も基本 Windows マシンが支給されていて、まぁやっぱり多数の人が cygwin を入れていたりします。
cygwin にはいくつか cyg* で始まるプログラムが付属していて、cygstart とかはわりかし有名ですが、わりとマイナーなツールに cygpath がある。この cygpath って使い様によってはわりかし便利なツールになります。

cygpath は何者なのか

見てもらった方が早い。

$ pwd
/home/y-kiri
$ cygpath -w `pwd`
C:\cygwin\home\y-kiri
$ cygpath -u 'C:\cygwin\home\y-kiri'
/home/y-kiri

というわけで、cygpath は (cygwin が使う) UNIX 形式のパスと Windows のパスを相互変換することができます。たとえばホームディレクトリの .zshrc をメモ帳で開きたいってとき、メモ帳は UNIX 形式のパスを理解できないから、以下はエラーになる。

$ notepad.exe ~/.zshrc

こういうときは cygpath を使う。

$ notepad.exe `cygpath -w ~/.zshrc`

ほか

そこそこオプションは豊富ですが、ぼくは基本的に -u、-w あたりしか使わない。