問題タブ [expect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4390 参照

expect - コマンド出力が変数に格納されることを期待する

以下のスクリプトを書きました。



今、テーブルの出力を変数で取得したい

正規表現を照合して、もう 1 つの変数で「19」を取得します。

誰でも解決策を教えてください。

/アクシャ

0 投票する
1 に答える
26572 参照

linux - 生成されたプロセスの終了コードをExpectスクリプトで返す方法は?

テストスクリプトの実行にはexpectを使用します。テストは、終了コードを介して成功/失敗を返します。ただし、同等の終了コードが返されることを期待してください。期待値が適切な終了ステータスを返すようにするにはどうすればよいですか?

私のテストは、 psql(postgresqlコマンドプロセッサ)で実行されるSQLスクリプトです。psqlではデータベースパスワードをコマンドラインパラメータとして指定できないため、スクリプトで指定できることを期待してください。

したがって、私の期待するスクリプトは次のようになります。

0 投票する
3 に答える
5301 参照

linux - sshログインの自動化:tclexpectinteractコマンドの動作がおかしい

sshログインを自動化したかった。いくつかの調査の後、tcl/expectが進むべき道であるように見えました。

ただし、私の問題は、interactが端末を引き継ぐときに、期待どおりに機能しないことです(しゃれは意図されていません)。

たとえば、端末のサイズを変更しても、「取得」されません。また、インタラクションが応答しない場合もあれば、理由もなくハングする場合もあります。以下にコードを含めました。コードに対する私の質問は、何かが足りないのかということです。

また、これを行うためのより良い方法はありますか(別のスクリプト言語を使用しますか?)端末が非常に応答性が高く、コンソールで手動でsshを入力した場合と同じである必要があります。

0 投票する
1 に答える
718 参照

java - ExpectJを使用してJavaでpg_dump(PostgreSQL 8.4の場合)を呼び出すにはどうすればよいですか?

私はこの問題を多くの場所で見ました。つまり、PostgreSQLからプログラムでバックアップを作成する際の問題です。私の解決策はExpectJを使用することですが、コードを機能させるのに問題があります。

私は次のコードを持っています:

ただし、shell.expect行では、タイムアウトになっています。

コマンドプロンプトからこのコマンドを実行すると、次のようになります。

C:\ Documents and Settings \ bobjonesthe3rd> "C:\ Program Files \ PostgreSQL \ 8.4 \ bin \ pg_dump" -h localhost -U myUserName myDB
パスワード:

つまり、パスワードの入力を求めるプロンプトが表示されることはわかっていますが、ExpectJは何らかの理由でプロンプトを受信して​​いません。

どんな助けでも大歓迎です。

ありがとう、マット

0 投票する
1 に答える
2326 参照

perl - PerlExpectでif-elseを実行するにはどうすればよいですか?

私はExpectPerlで1つのタスクを実行するために使用しています。コマンドを送信した後、成功したか失敗したかを示すファイルに印刷する必要があるかどうかに応じて、Successまたは出力として期待しています。ERROR

LOGファイルハンドルです。これを使用するSuccessと、コマンドの出力として取得してsendも、両方の正規表現が実行されます。私のログファイルでは、

どうすればこれを解決できますか?

0 投票する
1 に答える
3279 参照

perl - expectの出力をexpectのログファイルにリダイレクトする

私はperlでexpectを使用しています。stdoutコンソールに表示されるすべての出力をログファイルにリダイレクトして、将来デバッグできるようにします。現在、$ exp-> log_stdout(0);を使用しています。これにリダイレクトする代わりに、ログファイルにリダイレクトできますか?もしそうなら、それを行う方法は?

0 投票する
2 に答える
9781 参照

expect - 期待(言語)「正規表現パターンをコンパイルできませんでした:数量詞オペランドが無効です」エラー

Expectの正規表現に問題があります。

私はこの出力に一致させようとしています:

次の行の「+6」から「6」を引き出したい:

私はこの正規表現を使用しています:

しかし、スクリプトを実行するとエラーが発生します。

特定の文字をエスケープする必要があることを読みました。そうしないと、Expectが評価を試みます(したがって、「[」は上でエスケープされます)。「無効なコマンド」エラーが発生しないので、過去に到達したと思います。その段階。

しかし今、私はこの式がコンパイルされない理由に固執しています:-/

直接の答えに失敗しましたが、これをデバッグするのに役立つ可能性のあるExpect正規表現ツールを知っている人はいますか?

0 投票する
1 に答える
75 参照

.net - .NET を使用して REPL をラップするにはどうすればよいですか?

REPL 用の .NET ラッパーを作成しようとしています (具体的にはスキームですが、重要なところに到達していません)。何らかの期待スタイルのライブラリを探しましたが、見つからなかったので、System.Diagnostics.Process を使用しています。私は、正しく読み書きすることに成功しているとは思いません。

これが私のコードです。これは IronPython にありますが、C# でも同様の結果が得られました。

出力は次のとおりです。

最終的にはプロンプト ("> " のようなもの) を読み取れるようになり、入力した式の結果 ("(+ 3 15)" は "18" を返す) が返されることを期待しています。

0 投票する
2 に答える
1670 参照

expect - スクリプト、ソース、およびリターンを期待する

本「Exploring Expect」の 35 ページに、「return コマンドを使用して、ソース コマンドを返すことができます。それ以外の場合、ソースは、ファイル内の最後のコマンドを実行した後にのみ返されます。」と書かれています。

何を言っているのかよくわかりません。これが何を意味し、これがどのように役立つかを知りたいです。

ありがとうございました。

0 投票する
1 に答える
2686 参照

comparison - 期待できて、Pexpect ができないことは何ですか?

Pexpect の使用を開始することを検討しています。Pexpects のホームページで私はこれを見つけます:

Q: なぜExpectを使わないのですか?

A: 大好きです。それは素晴らしい。私はいくつかの本当のジャムから抜け出しましたが、Expect に必要なことの 90% を実行できる何かが欲しかったのです。サイズの 10% であること。TCL の代わりに Python でコードを記述できるようにします。Pexpect は Expect ほど大きくはありませんが、Pexpect は私が今まで Expect を使ってきたすべてのことを実行します。

Pexpect と Expect の間には 10% の違いがあります。だから私の質問は、この10%の違いは何ですか. Expect ができて Pexpect ができないことは何ですか。