久しぶりにJavaのネタ。今日はJava7がリリースされた…んだけど、それとは全く無関係(爆) それどころか超久しぶりにC言語までコーディングしちゃったし^^; Windows環境で、JavaからCygwin経由でシェルを呼び出す新しい方法を思い付いたので、試してみた。 以前から、JavaのProcessBuilderで、直接シェルを指定する代わりにCygwinのbash.exeを呼び出して間接的にシェルを実行することは出来ていた。 でもこの方法だとJavaのプログラム内でWindows(Cygwin)かどうかを判定してWindows専用の処理を入れてやる必要があった。 新しく思い付いた方法は、Javaのプログラムはシェル呼び出しの形のまま、何も変える必要は無い。 呼ばれる側をシェルではなく「.sh.exe」という拡張子のexeファイルにする。exeファイルを実行する(呼び出す)ときは拡張
![JavaからCygwin経由でシェルを呼び出す方法その2 - ひしだまの変更履歴](https://cdn-ak-scissors.b.st-hatena.com/image/square/df3a50c14b465108d37d0f484920317dd74971fb/height=288;version=1;width=512/http%3A%2F%2Fu.xgoo.jp%2Fimg%2Fsns%2Fblog.png)