2

今回は、リモートのWindowsマシンでコマンドを実行することについて質問しています。ここでもっと説明させてください。
** Pythonがインストールされているマシンがあり、PowerShellおよびcmdコマンドを実行したい、またはcmdファイルをリモートWindowsマシンに送信して、そこで実行できるようにし、エラー、stdoutなどのすべての出力を取得できるようにしたい発射機に戻ります。
Pythonからリモートマシンをリモートで管理したいように。また、可能であれば、Pythonと同時に複数のマシンでコマンドをリモートで起動できますか。
他のシステムにはPythonがインストールされていないことに注意してください。****

4

5 に答える 5

3

これは地雷原のようなものですが、これを行う「正しい」方法 (python を使用せずにリモートの win マシンを制御する python) は、WMI または WRM のライブラリを使用することです。

Tim Golden (Python-on-Windows の世界の権威) による WMI モジュール、Dell のWSMANライブラリ、およびpywinrm モジュールがあります。毒を選んでください - それらにはそれぞれ独自の弱点があります (WRM を使用する前に、サーバーで有効にする必要があります。これには追加のソフトウェアは必要ありませんが、すべて標準の Windows です。WMI は DCOM で動作するため、 DCOM セキュリティなどを理解する必要があります)。

于 2013-09-21T12:16:08.183 に答える
2

khaglerが提案したようsshに、これに使用できます。しかし、Python を使用するとリモート側でより多くの制御が可能になるため、Python を両側にインストールすることを好みます。

たとえばssh、2 台のコンピューター間に単一のチャネルを提供するだけです。つまり、有線で送信するには、リモート側で折り畳まなければstdoutなりません。stderrリモート Python サーバーを使用すると、より複雑なスクリプトを実行でき、公開したいものを正確に制御でき (リモート アクセスを許可すると、任意のコマンドを実行できます)、エラー処理がはるかに簡単になります。

または 2 つの組み合わせ: リモート コンピューターに Python をインストールし、 を使用sshして Python スクリプトを開始します。その後、コマンド ライン/シェル インターフェイスの制限なしで、カスタム プロトコルを使用して通信できます。scpを使用して、新しいスクリプトをリモートでインストールすることもできます。

于 2013-09-03T07:12:21.413 に答える
2

Windows マシンに ssh サーバーをインストールして ( freeSSHdが良いと聞きました)、paramikoモジュールを使用して通信することができます。

于 2012-12-01T08:46:14.737 に答える
0

と組み合わせてPyro4のようなものを使用してみることができsubprocess.popenます。

Pyro4 はリモート メソッド呼び出しのフレームワークであり、subprocess.popen基盤となる OS プロセスの作成に使用されます。

于 2012-11-29T14:08:27.120 に答える