プロが教える店舗&オフィスのセキュリティ対策術

Perlであるプログラムを起動するスクリプトを作成しようとしているんですが、Windowsで"C:\Program Files\..."のように空白を含む場合、うまくいきません。
最初にchdirで移動しようとしてもchdirもうまく動かないのですが、どうしたらいいでしょうか?

$Path = C:\program files\Module Home 6.2.1\Server\bin

chdir ($Path);
$cmd = "aaa.exe $user $port > $Logfile";
ret = system($cmd);

exit;

A 回答 (3件)

ん~, 手元だと


$dir = "c:/Program Files";
chdir($dir);
system("dir");
でちゃんと c:\Program Files のファイルリストが表示できるんだけど....
    • good
    • 0

""で囲む、


\は\\にするとかしてみたらどうですか
    • good
    • 0

$Path = '相対パス';



で動作した。

この回答への補足

回答ありがとうございます。相対パスだと動作しますね。
本文には記述しなかったのですが、
将来プロパティファイルにてパスを管理して、ソースはさわらないようにしようと考えています。
そのときに相対パスでは管理しづらいかなと思いますので、できれば絶対パスにしたいと思っています。

補足日時:2005/09/08 15:52
    • good
    • 0

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