#! /usr/bin/env python | |
# Remote python client. | |
# Execute Python commands remotely and send output back. | |
import sys | |
import string | |
from socket import * | |
PORT = 4127 | |
BUFSIZE = 1024 | |
def main(): | |
if len(sys.argv) < 3: | |
print "usage: rpython host command" | |
sys.exit(2) | |
host = sys.argv[1] | |
port = PORT | |
i = string.find(host, ':') | |
if i >= 0: | |
port = string.atoi(port[i+1:]) | |
host = host[:i] | |
command = string.join(sys.argv[2:]) | |
s = socket(AF_INET, SOCK_STREAM) | |
s.connect((host, port)) | |
s.send(command) | |
s.shutdown(1) | |
reply = '' | |
while 1: | |
data = s.recv(BUFSIZE) | |
if not data: break | |
reply = reply + data | |
print reply, | |
main() |