0
私はplinkコマンドを実行して、文字列に値または応答を返すLinuxプラットフォームでperlスクリプトを呼び出そうとしています。VBAからの戻り値call shell(whatever_cmd)
私が試した:OK OKまたはNOT
のいずれかで値を返すtest.plというしかし、私はRETVAL変数にこれらの文字列をキャプチャすることができませんでした
retval = Shell("plink perl test.pl")
を。 retvalを追跡すると、ランダムな整数のように見えます。
正しい戻り値または文字列を取得する方法はありますか?
ランダムな整数は0〜255ですか? 'Shell'コマンドがプログラムの終了コードではなく_output_を返すことを確かめますか? – simbabque
最初はこれがLinuxだと思っていましたが、実際はWindowsのVBAに関する質問ですね。対象のコンピュータだけがLinuxだと思われますが、VBAからShell呼び出しを行う方法とはまったく関係ありません。あなたのシェル呼び出しからの出力(PIDや応答値ではない)をどのように取得するかの問題のほかに、私はあなたが 'plink'を正しく使っているとは思いません。たぶんあなたはそれを落としましたが、 'user @ host'とおそらくパスワードを指定する必要があると思います。 – jimtut
... dos puttyコマンドを次のように使用しました。 Perl_Cmd = "perl"& "/usr/script/a.pl" Shell_Cmd = "plink root @"& "123.123.123.123"& "-pwルート "&Perl_Cmd RetVal =シェル(Shell_Cmd) 戻り値は255より大きいか、むしろ4〜5桁の数字にすることができます。 しかし、Linuxベースでa.plを実行すると、戻り値はOKかNOT OKになります。 私はa.pl(perlスクリプト)がうまくいきますが、VBAに価値を戻していないことを知っています。 –