問題タブ [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 - subprocess モジュールを使用して Linux ボックスに SSH 接続する
次のことを行う必要がある要件があります
Linuxボックスにsshし、コマンドを実行し、出力を取得する必要があり、いくつかの操作を行う必要があります。
それはpythonサブプロセスモジュールを介して可能ですか。
基本的に、Linuxボックスに接続するためのIPアドレス、ユーザー名、およびパスワードを指定し、コマンドを実行して出力を取得する.pyコードが必要です。
また、Python で利用可能な他のモジュールを介しても可能です。
提案は大歓迎です。
python - python pexpect は動的な値では機能しません
だから私は、リモートサーバーにsshして、その端のiperfサーバーを起動するプログラムを持っています。それが実行されると、クライアント側からそのサーバーを iperf します。
たとえば、静的に IP アドレスを指定すると正常に動作します。
しかし、私が使用するときではありません:
私は得る:
ADDRESS は間違いなく正しく入っています。何がうまくいかないかについて何か考えがありますか?
pexpect - pexpect を使用して情報を返す
pexpect の使い方を学んでいて、質問がありました。リモートサーバーのバージョン番号を見つけようとしており、そのバージョン番号に基づいて正しいドライバー番号を選択したいと考えています。これを行うにはどうすればよいか完全にはわかりません。getline 関数の行に沿った何か。使えそうな機能があれば教えてください
python - パターンやシグナルを無視するように期待できますか?
いくつかのCiscoネットワークデバイスにアクセスするためのPythonスクリプトを作成しようとしています。残念ながら、デバイスは同じように設定されておらず、奇妙な場所に表示されるバナーが表示されているものもあります。これらのバナーには、プロンプトと同じものがいくつかあるパターンが含まれている場合があります。
たとえば、ログインするとのプロンプトが表示される'hostname#'
ので、基本的にはpexpect('#')
Iを使用しますが、他の特定のプロンプトも処理する必要がある場合があります。可能なプロンプトのリストに加えて、タイムアウトを実際に用意し、それに応じて動作します。 'hostname>'
pexpect('>')
バナーが中央のどこかに表示されない限り、これは問題ありません。たとえば、ログインした後 ## Welcome ##
、プロンプトの直前に「」というバナーが表示される場合があります。pexpectに正規表現を無視するように指示できれば#.*\r
大丈夫だと思いますが、それが可能かどうかはわかりません。pexpectに文字列を無視させることは可能ですか、それともこれを回避するためのより良い方法がありますか?
python - subprocess モジュール、envoy、sarge、pexpect の違いは?
入力を送信し、さまざまな aircrack-ng スイート ツールから出力を取得する必要があるプログラムを作成することを考えています。subprocess、envoy、sarge、pexpect など、必要な機能を提供する Python モジュールをいくつか知っています。特に私がPythonに慣れていないので、誰でも私が何を使うべきか、何を使わないべきかについてアドバイスできますか?
ありがとう
python - pexpectのファイル書き込みコマンドが思ったように動作しない
コマンドラインから実行できるプロセスがあり、停止するように指示するまで継続的にファイルにデータを書き込み、プロセスの実行中にアクセス (読み取り) できます。
ただし、pexpect を使用して同じコマンドを実行すると、pexpect インスタンスを停止するまで、ファイルは空のままになります (読み取りは可能です)。そうして初めて、ファイルがデータでいっぱいになります。
これは pexpect の単なる機能ですか、それともここで何か間違っていますか?
pexpect コマンド:
python - Python / Pexpect before output out of sync
Python/Pexpect を使用して、複数のルーターへの SSH セッションを生成しています。コードは 1 つのルーターで機能しますが、session.before の出力が一部のルーターと同期しなくなるため、以前の sendline からの出力が返されます。これは特に、空白行を送信する場合 (sendline()) に当てはまります。誰でもアイデアはありますか?どんな洞察も本当に高く評価されます。
以下は、私が見ているもののサンプルです。
python - winpexpect での ssh
Windowsプラットフォームで.pyからsshするためにこのコマンドを実行しようとしました:
pexpect と同様に機能するはずですが、次のエラーが表示されます。
C:\rhcygwin\bin がパスにあることを確認しました。ssh コマンドを見つけるように .py ファイルに指示する方法について何か提案はありますか?
編集:アプローチを切り替えました:このコードを.pyで実行しました
非常に初歩的ですが、正常に接続されます。
python - オブジェクトを使用したPythonのデフォルトパラメータ
Pythonでデフォルトのパラメーターを定義できることは知っていますが、オブジェクトを使用して定義できますか?
たとえば、p.expectオブジェクトを操作したいと思います。
Pythonでデフォルトの引数として渡されたオブジェクトを処理する正しい方法ですか?そうでない場合、どのようにそうしますか?または、これが正しければ、そうするためのより良い方法はありますか?
python - pexpect モジュールに関する初心者向けの説明
私はpexpectのドキュメントを調べていましたが、run()関数を呼び出してコマンドを実行し、出力を返すことができると言っていました
だから私は次のことをしましたが、エラーになりました。ここで何か不足していますか?
私は git リポジトリをダウンロードし、(そのリポジトリに対して) cd を実行してからいくつかのコマンドを渡したいスクリプトを書いています。インタラクティブなコンソールを提供するため、 pexpect モジュールを使用することにしました
ここで何か不足している場合は教えてください。
ありがとう、ビジェイ