1

たとえば、私がこのコードを持っている場合:

subprocess.call(['gnome-terminal'])

開いたばかりの特定の端末にPython出力文字列を送ることは可能ですか?ありがとう!

4

2 に答える 2

3

可能性はありますが、従属端末でカスタムプロセスを実行する方が簡単です。たとえば、ドキュメントのサンプルサーバーsserv.pyから次のコマンドを実行します。

 gnome-terminal -e "python ./sserv.py"

ポート9999であなたと楽しくチャットします。より複雑なものを考えると、それsserv.pyはあなたが望むことを何でもすることができます(つまり、終末的なものは何でも)。

于 2010-07-27T02:34:15.473 に答える
2

PExpectがあなたのためにこれを行うかもしれないと思います:

Pexpectは、基本的にパターンマッチングシステムです。プログラムを実行し、出力を監視します。出力が特定のパターンに一致すると、Pexpectは人間が応答を入力しているかのように応答できます。Pexpectは、自動化、テスト、および画面スクレイピングに使用できます。Pexpectは、ssh、ftp、passwd、telnetなどのインタラクティブコンソールアプリケーションの自動化に使用できます。また、、、またはその他のテキストベースのWebブラウザを介してWebアプリケーションを制御するためにも使用でき lynxますw3m。Pexpectは純粋なPythonです。Pythonの他のExpectに似たモジュールとは異なり、PexpectはTCLやExpectを必要とせず、C拡張機能をコンパイルする必要もありません。標準のPythonptyモジュールをサポートするすべてのプラットフォームで動作するはずです。

于 2010-07-27T02:24:22.977 に答える