バックグラウンド
楽しいプロジェクトとして、新しい Raspberry Pi 用のリモート コントロール アプリケーションを作成することにしました。SSH の使い方は知っていますが、Python で似たようなものを実装したかったのです。ターミナルに出力されたテキストを Python シェルに表示するにはどうすればよいですか?
この SO questionをチェックアウトしましたが、うまくいきませんでした。うまくいかなかったということは、出力テキストを見ることができないということです。入力するpasswd
と、それは私だけを与えます
Changing password for User.
しかし、インタラクティブなセッションは提供されません。それが私が理解しようとしていることです。
注:私の Raspberry Pi は「Wheezy」で実行されています。また、このプログラムが他のオペレーティング システム (Windows 7、Mac OS X など) で動作するようになれば素晴らしいと思います。
コード
import subprocess
import socket
import sys
import platform
import os
print "WELCOME TO xTROL. \n"
pyVER = sys.version
OS = platform.system()
print pyVER, "\n"
print "Running on %s" % (OS)
while True:
INPUT = raw_input(">>>")
cmd_FORMAT = INPUT.split()
try:
output = subprocess.Popen(cmd_FORMAT, stdout=subprocess.PIPE).communicate()[0]
print output
except Exception:
print "Something went wrong."