PerlでWindowsがLinuxかを区別するスクリプトを記述したいのですが、何か良い方法はないでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

use Config;


if($config{'osname'} =~ /^(MS)?Win/i){
print "Windows";
}else{
print "Mac or Unix";
}
    • good
    • 0

 察するに、実行環境がウィンドウズ(ローカル?)か、アパッチ(サーバー)かを区別したいのではないかと思いますが、そういう解釈でいいでしょうか?



 であれば、方法はいくらでもあります。
 ウィンドウズでは動かない関数というものがいくつかありますんで、そういうのを予め eval {} で囲っておく方法が一般的です。

 また、純粋にIF文で区別したいのであれば、__FILE__マクロに「¥」が含まれているかどうかを見る方法もあります。
 それから環境変数 SERVER_SOFTWARE に、OSを区別するための文字列が入っていたりもします。

 ただし、この手の問題は色々試してみて、自分で最適な方法を見つけるしかないのが常ですが(^_^;
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報