SSH.NETを使用してUnixボックスでシェルスクリプトを呼び出すWebサービスがあります。SSH.NETで実行されたコマンド(.4gl)SshClient.RunCommandが "No such file or directory"で失敗する
スクリプトを正常に実行すると正常に動作し、Informix DB上で正常に動作します。
ちょっとした背景:
.4gl
を実行するスクリプトを呼び出します(これはビジネス知識として表示されません)。
私はSSH.NETでそれを実行すると、バックログに次のエラーを与えているG4L:
fglgo:共有ライブラリをロード中にエラーが:libiffgisql.so:共有オブジェクトファイルを開くことができません:いいえそのようなファイルやディレクトリ
FILE_LOAD終了:2017年9月21日15時37分01秒
C#コードがSSH.NETスクリプトを実行するために
sshclients = new SshClient(p, 22, username, password);
sshclients.Connect();
sshclients.KeepAliveInterval = new TimeSpan(0, 0, 1);
sshclients.RunCommand("sh " + Script_dir);
KeepAliveInterval
を追加しました。
私の質問はUnix/4glからのエラーです。
なぜこのようなことが起こり、スクリプトを正しく実行させることができますか?
ありがとう、マーティン。ポイント3は問題を解決しました。このスクリプトは、 'CREDIT_LOAD_DIR'という別のディレクトリのファイルを介してやりとりします.2de環境設定を追加しようとしました。 私はこれを追加しました: SshCommand SC = sshclients.CreateCommand( "PATH = \" $のPATH; // USR/DIR \ " "+ " && CREDIT_LOAD_DIR = \ "$ CREDIT_LOAD_DIR; // USR/DIR" + " && sh "+ Script_dir); しかし、スクリプトは実行されていません –
コマンドの中に複数の環境設定を追加することはできますか? –
1回目のコメントで私は自動修正を受け取ってファイルを反復します –