回答編集履歴
3
paramiko を pexpectに変更
test
CHANGED
@@ -6,5 +6,5 @@
|
|
6
6
|
また、出力を得るために、stdout.read()を実行すると、コマンドの出力結果を待つことでコマンドが実行されるようになるということです。
|
7
7
|
|
8
8
|
---
|
9
|
-
ちなみに、paramikoはかなり低レベルのAPIでできているので、手動の作業の自動化が目的であれば、もう少し高レベルの p
|
9
|
+
ちなみに、paramikoはかなり低レベルのAPIでできているので、手動の作業の自動化が目的であれば、もう少し高レベルの pexpectを使ったり、ルータなどのみが対象であればnetmikoあたりを検討するのもいいと思います。
|
10
10
|
また、pythonプログラムでの制御が目的ということでなければ、ansibleを使うというのもありでしょう。
|
2
追記
test
CHANGED
@@ -4,3 +4,7 @@
|
|
4
4
|
対話型で実行している場合、メソッド実行後にもインタープリタは生きているので、セッションは切れません。
|
5
5
|
|
6
6
|
また、出力を得るために、stdout.read()を実行すると、コマンドの出力結果を待つことでコマンドが実行されるようになるということです。
|
7
|
+
|
8
|
+
---
|
9
|
+
ちなみに、paramikoはかなり低レベルのAPIでできているので、手動の作業の自動化が目的であれば、もう少し高レベルの paramikoを使ったり、ルータなどのみが対象であればnetmikoあたりを検討するのもいいと思います。
|
10
|
+
また、pythonプログラムでの制御が目的ということでなければ、ansibleを使うというのもありでしょう。
|
1
修正
test
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
exec_command()メソッドは、コマンドの実行を開始した直後に=終了を待たずに返ります。
|
2
|
-
もし、プログラムがそこで終了してしまっていると、即座にセッションが切れてしまうので、開始されたコマンドが強制的に終了してしま
|
2
|
+
もし、プログラムがそこで終了してしまっていると、即座にセッションが切れてしまうので、開始されたコマンドが強制的に終了してしまうのです。
|
3
3
|
|
4
|
-
対話型で実行している場合、インタープリタは
|
4
|
+
対話型で実行している場合、メソッド実行後にもインタープリタは生きているので、セッションは切れません。
|
5
5
|
|
6
|
-
また、出力を得るために、stdout.read()を実行すると、コマンドの出力結果を待つこと
|
6
|
+
また、出力を得るために、stdout.read()を実行すると、コマンドの出力結果を待つことでコマンドが実行されるようになるということです。
|
7
|
-
されるということです。
|