最近は「コマンドプロンプト」じゃなくて「Windows コマンド インタープリター」って言うんですね。
というのは余談で、ckw-mod で起動する Windows コマンドインタープリターの初期設定をするときにハマった話。Linux でいうと .bash_profile
やら .bashrc
の設定みたいなもんです。
やってることは大きく以下の2つです。
- 初期カレントディレクトリの設定
- 環境変数の設定
これらを実現するコマンドファイルはこんな感じになります。
cmd-myproj.cmd
start %~dp0ckw\ckw.exe -x "CMD /K cd %USERPROFILE%\git\myproj && set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25 && PATH=C:\Program Files\Java\jdk1.7.0_25\bin;%PATH%;C:\Ruby200\bin;%APPDATA%\npm;C:\Program Files\nodejs-v0.10.22"
%USERPROFILE%\bin
にパスを通して、その中にこのファイルと ckw のディレクトリを置いておけば、Windows キーを押して cmd-myproj[Enter]
でいい感じにセットアップされた ckw が起動します。
%USERPROFILE%
というのは、一般的には C:\Users\[ユーザ名]
のことです。Linux でいう $HOME
ですね。%HOMEDRIVE%%HOMEPATH%
でも多分同じ。
ハマった事例
-x オプションではなく -e オプションを使うと、なぜかパスが通らなくなります。
cmd-myproj.cmd
start %~dp0ckw\ckw.exe -e CMD /K cd %USERPROFILE%\git\myproj && set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25 && PATH=C:\Program Files\Java\jdk1.7.0_25\bin;%PATH%;C:\Ruby200\bin;%APPDATA%\npm;C:\Program Files\nodejs-v0.10.22
また、改行を入れてもなぜかパスが通りません。
cmd-myproj.cmd
start %~dp0ckw\ckw.exe -x "CMD /K cd %USERPROFILE%\git\myproj && ^
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25 && ^
PATH=C:\Program Files\Java\jdk1.7.0_25\bin;%PATH%;^
C:\Ruby200\bin;%APPDATA%\npm;C:\Program Files\nodejs-v0.10.22"