Windows XPマシンの1つで、dir /b
などのPerlシステムコマンドは、/b: no such file or directory
のようなエラーメッセージを生成します。つまり、スイッチはファイル名として解釈されています。Perlシステムコールが内部Windowsコマンドを呼び出せないのはなぜですか?
これは、私がbackticks
,open()
またはsystem()
を使用した場合に発生します。私は別の引数としてsystem()にスイッチを渡そうとしました。もちろん、DOSコマンドラインまたはバッチスクリプトで呼び出しが正しく動作することを確認しました。
誰かがこれに遭遇しましたか?
このマシンにWindows用のPerlインタプリタをインストールしましたか? WindowsはPerlスクリプトをネイティブに実行しません。申し訳ありませんが、基本的な質問が奇妙に思えます。あなたがこれをインストールしていれば、「/」をエスケープしてみてください。 WindowsのPerlで作業して以来、しばらくしていました。 – Namphibian
私のメモリが正しく機能している場合、Perlは標準的な動作であるはずの特殊文字をエスケープしています。 – Namphibian
Namphibian、はい、ActivePerlがこのマシンにインストールされており、Perlの他の面でうまく動作しているようです。私はこのコンピュータにPerlを再インストールしてみましたが、これは他のコンピュータ(この問題がない)と一致していることを確認しています。 BTWは、すべて同じOS(XP SP3)で動作しています。 – UhClem