いつもお世話になります。
現在、jperlを使用し、
あるフォルダ内の中にあるサブフォルダをlaplusを使用し
コマンドラインから圧縮をかけるというスクリプトを作成しております。
そこで、下記ロジックを実行するとエラーになります。
【ロジック】
$cmd = "\"c:\\Program Files\\Lhaplus\\Lhaplus.exe\" /c:lzh
o:\"C:\\Users\\testtaro\\Documents\\LAPLUS_TEST\"
\"C:\\Users\\testtaro\\Documents\\LAPLUS_TEST\\2011-03-11(0100)\"";
system($cmd);
【エラーメッセージ】
'c:\Program' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
「$cmd 」の内容をデバック出力しそれを直接コマンドプロンプトで実行すると
正常に圧縮されます。
おそらく「Program Files」の半角スペース内で切れてしまっているのだと思いますが、
ダブルクォテーションでくくるやり方が間違っているのでしょうか。
超初心者の質問で大変申し訳ありませんが宜しくお願いします。
No.1ベストアンサー
- 回答日時:
可能なら新しい今時のperlを使いましょう。
今ちょっと昔のjperlを発掘して試して見ましたが、
---
C:\> jperl -v
This is jperl, version 4.036 + 1.4(WIN32, SJIS) May 25 1996
---
このjperlだと「'c:\Program' は、内部コマンド…」エラーになりましたが、
---
C:\> perl -v
This is perl, v5.8.7 built for MSWin32-x86-multi-thread
---
こちらのperlだと、C:\Program Files 以下のプログラムも問題無く system で実行できました。
(使ったのはActivePerlです。Windows用のインストーラがあるので簡単にインストールできます。
http://www.google.co.jp/search?q=ActivePerl&lr=l …
なお、どうしても jperl で動かす必要があるのなら、
>$cmd = "c:\\Progra~1\\Lhaplus\\Lhaplus.exe /c…
で実行は可能だと思います。
ありがとうございました!
引き継いだものをそのまま使い続けていたため
最新バージョンにするというステップを失念していました。
早速試してみます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- C言語・C++・C# exeファイルが作れない(windows10) 6 2022/08/13 08:47
- Windows 10 USBにwindows10をいれて起動する方法 5 2022/04/14 14:29
- Windows 10 ネットワークプリンターにファイルを直接送る方法・コマンドないですか?(´・ω・`) 3 2023/03/13 23:15
- Windows Me・NT・2000 コマンドプロンプトのdisk partについて 2 2023/03/05 15:49
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- デスクトップパソコン Dell Inspiron 3250でRealtekのドラーバーでのLine outから出力しない 1 2022/07/10 19:15
- Excel(エクセル) フォルダ階層が深いファイルの拡張子の一括変換 2 2022/12/23 18:40
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Perlソースコードをコンパイル...
-
Excel VBA 定義されたプロージ...
-
ユーザー定義関数に#NAME?が返...
-
ArduinoのジャイロモジュールMP...
-
エクセルVBAでシートモジュール...
-
例外処理のフローチャートの記...
-
VBA This Workbookモジュール...
-
ユーザーフォームに最小化・最...
-
【vba】フォームに書いてあ...
-
Excel VBAでリンク切れをチェッ...
-
VBA モジュールで共通に使う変...
-
Pg.pmモジュールがロードできない
-
VBでグローバル変数を宣言するには
-
グラフのX,Y座標を取得したい
-
vba 標準モジュールインポート...
-
Excel VBAで、ユーザーフォーム...
-
印刷後メッセージボックスを表...
-
VBAで別モジュールへの変数の受...
-
PCをWI-FI化(現在は有線)
-
VBAで旧字体を異字体に一括で変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Perlソースコードをコンパイル...
-
プロシージャの戻り値を取得す...
-
Perlで環境変数を設定するには
-
systemの引数の中括弧
-
system関数を使用してJava実行...
-
perlでコマンドプロンプト実行
-
Perlのexitについて
-
PERLからcshellを実行したいの...
-
Cygwin上でperlスクリプトの実行
-
Perlスクリプトが実行できない...
-
pp (Perl Packager) で require...
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
例外処理のフローチャートの記...
-
ArduinoのジャイロモジュールMP...
-
ユーザー定義関数に#NAME?が返...
-
「デバイスは PRN を初期化でき...
-
VBAで別モジュールへの変数の受...
-
Excel VBA 『Call』で呼び出す...
-
エクセルVBAでシートモジュール...
おすすめ情報