さまざまなIPアドレスをリストしたcsvファイルを読み込んで、複数のデバイスに順次ログインできるpythonスクリプトを作成しました。そこから、スクリプトを介してデバイスに渡されるいくつかのコマンドのコンテンツを含む各デバイス用のファイルが出力されます。だから私はかなり遠くに来た。私が取り組んでいる問題は、スクリプトがハングすることがあることです。これは、一部のデバイスにはソフトウェアリビジョンが異なるため、デバイスに渡される特定のコマンドがサポートされていないためです。私が重点を置いているのは、ログイン後のプロンプトです。例えば、デバイスタイプAへのログインには、xyz#のコマンドプロンプトがあります。デバイスタイプBのコマンドタイプはabc:です。それは同じメーカーで、モデルやソフトウェアのバージョンが異なるだけです。コマンドプロンプトに応じて、私はそのデバイスでスクリプトをハングアップせずに実行できるコマンドを知っています。だから、私ができる必要があるのは、成功したログイン後です。コマンドプロンプトに応じて、特定のコマンドのセットを実行します。異なるログインプロンプトを決定するPython telnetlib
私のコードの一部を投稿することができれば助かりますが、私が実際に探しているのは、これが可能な場合です。もしそうなら、ポインタ。私が試してみたいことに関するいくつかの提案。 Pythonを数ヶ月使った後、私はこれを行う方法がなければならないことを知っています。私は通常、他人の投稿を通して仕事をして解決策を開発できるので、投稿しません。しかし、私は少しこれに取り組んできたし、一緒にそれを作ることができなかったので、私はアシストのためだと思う。この時点で-Shane
EDIT
は、私はまだインクルードは、コマンドプロンプトを決定するコードを記述することができませんでしだ。少なくとも、telnetセッションが起動している間は、少なくとも。私はtelnetでコマンドを実行し、セッションを閉じることができます。結果をファイルに書き込むことができます。そこからファイルを読んでプロンプトを決定します。しかし、理想的には、私はtelnetセッションを開き、セッションが開いている間にプロンプトを決定するためのコマンドを実行し、セッションが起動している間にそれを読んでからプロンプトを実行して特定のコマンドを実行できるようにしたいと思っています。
この問題は、Telnetセッションがまだ起動している間にコマンド出力を読み取れないことが原因と考えられます。セッションは閉じて、すべての出力をファイルに書き込む必要があります。次に、ファイルを読み込んでコマンドプロンプトを確認し、プロンプトに基づいて実行するコマンドを決定してから、新しいtelnetセッションを開き、それらのコマンドを実行します。
Telnetセッションを終了し、ファイルにデータを書き込み、それを読み取ってプロンプトを確認した後、スクリプトのログイン部分をもう一度ループバックする必要がありますか?または私は何かを逃していますか?私が私の記述で明確にしているかどうかは分かりません。
感謝。私はこれをスクリプトに取り込み、結果に戻ってきます。 – Shane