問題タブ [pexpect]
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.
python - bashシェルはコマンドを理解しないため、pexpectはbashシェルを起動せずにパイプを使用する必要があります
pexpectを使ってこんなことをしたい
問題は、そのコマンドをテキストファイルに出力したいのですが、spawn() でパイプを使用できないため、シェルを起動する必要があることです。bash シェルは sysinfo -v を理解せず、それについて文句を言います。
bashターミナルを開かずに目的の出力をファイルに取得できる方法を知っていますか? grep せずに spawn() メソッドを使用するだけで問題を解決できますが、完全に一致させる必要があるため、grep が必要です。
ありがとうございました
python - Pexpectはタイムアウトを尊重しません
pexpectはタイムアウトで機能していません。
pexpectを機能させるにはどうすればよいですか?
python - pexpect からの出力をキャプチャする
で困っていpexpect
ます。tralics
次のように、ラテックス方程式を読み取り、MathML 表現を出力する出力を取得しようとしています。
だから私は pexpect を使って数式を取得しようとします:
出力には式がありますが、最初に元の入力があり、最後にいくつかの制御文字があります。
出力文字列をきれいにすることはできますが、何か基本的なものが欠けているに違いありません。MathML を取得するよりクリーンな方法はありますか?
linux - LinuxのProcessにKEY_DOWNイベントとKEY_UPイベントを送信することを期待してください
QtGUIアプリケーションに埋め込まれたLinuxキープレスイベントをシミュレートしたいと思います。主に、KEY_UP、KEY_DOWN、KEY_LEFT、KEY_RIGHT、およびKEY_F{1-2-3}キーの押下をシミュレートしたいと思います。Xを利用できません。
ここにASCII文字テーブルがあります:
そして、私は物事を送信する方法を理解しています。たとえば、CNTRL-Tは、そのテーブルをスポーンし、expectスクリプトで次のように送信することにより、アプリケーションにそのテーブルを使用します。
KEY_???の送信方法に関するドキュメントや例が見つからないようです。Expectを使用してキーを押します。Expectを使用してこれを行うにはどうすればよいですか?
不可能な場合、キー押下をプロセスに送信する他の方法はありますか?エスケープシーケンスを/dev/ input/keypadにエコーできないようです...
アップデート:
コメントありがとうございます。
次の手順を実行すると、矢印キーが生成する出力を確認できます。
infocmpxtermの出力も次のように表示されます。
次のように、Buildrootの「menuconfig」(Linuxによく似ています)プログラムでいくつかの単純なエスケープシーケンスを試しました。
menuconfigを開いて、カーソルを1つ下に移動させたいのですが。ただし、「interact」ステートメントが含まれていても、すぐに起動して終了します。理由について何かアイデアはありますか?ありがとう -
python - pexpect.runは長いコマンドを実行できません
pexpect.run
コマンドの実行に使用しています。下記参照:
これを実行すると、次のようにoutput
なります。
しかし、シェルで同じコマンドを実行すると、毎回機能します。問題はわかりません。どんな助けでも大歓迎です!pexpect.runでは、コマンドをなんらかの凝った方法で分割する必要がありますか?
python - サブプロセスによってシステム時刻が変更された場合、誤ってタイムアウトすることが予想されます
Redhat linux
システム時刻を更新するシェルスクリプトである子プロセスを生成しています。以下のように期待して30分のタイムアウトがあります。私の子プロセスは、他のコマンドとともにシステム時間を4時間先に更新します。以下の行を実行すると、1の結果が得られます。
真のタイマーを使用してタイムアウトするようにpexpectを作成するにはどうすればよいですか?
python - pexpectはカーソルの動きを送信します
pexpectを使用して、上、下、左、右のキーなどのカーソルの動きを送信するにはどうすればよいですか。以下の例は、上/下キーを使用してページ上のさまざまなリンクを選択するelinksを自動化するためのものです。
shell - pexpect 応答には、次のような要求のエコーが含まれます
pexpect
前にandを使用したことがありsendline
ますが、今回はパイプとワイルドカードを使用してより長いコマンドを実行しています。以下を参照してください。
sendLine 関数を持つ私のクラスは、次のようになります。
しかし、コードを実行しているとreturnedString
、応答だけでなく要求も含まれていることがわかりました。
したがって、を印刷するreturnedString
と、次のようになります。
応答に同じバッファ内の要求が含まれるのはなぜですか?
私はすでに設定setecho(False)
していますが、役に立ちません!
編集: (正しい修正) 応答からすべてを手動で削除し、要求も削除する必要があります。setecho(False) はまだ何もしません!
python - Python Pexpect SSH コマンド ライン ログイン引数
pexpect.py スクリプトを使用してログインし、ホスト名情報を取得しています。
基本的に私はこのように実行します
以下で、いくつかのコマンドを実行して終了することが自動化されていることがわかります。ユーザーが見たい情報を選択できるように、最後に行を追加できるようにしたいと思います。したがって、上記のコマンド ラインの代わりに、次のようになります。
基本的に、-x が.. uptime で、-z が ifconfig.. のリストには、-a、-b、-c もあります。これらの引数をコードに追加する方法がわかりません。
python - pexpectのログファイルでタイムスタンプを取得するにはどうすればよいですか
私はpexpectを使用してtelnetおよびssh通信を処理しています。また、すべての要求/応答をログファイルに書き込んでいます。を使用しpexpect.logfile(filename)
ます。
ログファイルにもタイムスタンプを入れたいのですが。ドキュメントのどこにも見つかりません!誰かがこの機能を実装する方法を知っていますか?