#!/usr/bin/env python # ueage: python tomcat.py start|stop|restart" import paramiko import threading import sys def ssh2(ip, username, passwd, cmd): try: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, 22, username, passwd, timeout=5) for m in cmd: stdin, stdout, stderr = ssh.exec_command(m) out = stdout.readlines() for o in out: print o, print '###%s has done\n' % (ip) ssh.close() except: print '%s\tError\n' % (ip) def usage(): print "ueage: python tomcat.py start|stop|restart|diskcheck|tomcatcheck|rmolddir" sys.exit(1) if __name__ == '__main__': argc = len(sys.argv) if argc < 2: usage() else: for i in sys.argv[1:]: if i == 'status': cmd = ['/nfs/tomcat/tomcat.sh status && ls -l /opt/tomcat/webapps/'] elif i == 'start': cmd = ['/nfs/tomcat/tomcat.sh start'] elif i == 'stop': cmd = ['/nfs/tomcat/tomcat.sh stop'] elif i == 'restart': cmd = ['/nfs/tomcat/tomcat.sh restart'] elif i == 'diskcheck': cmd = ['df -h'] elif i == 'tomcatcheck': cmd = ['/nfs/tomcat/tomcat.sh tomcatcheck'] elif i == 'rmolddir': cmd = ['cd /opt/tomcat/webapps/; rm -rf admin trade admin'] elif i == 'rmtrade': cmd = ['cd /opt/tomcat/webapps/; rm -rf trade'] else: usage() username = "tomcat" passwd = "tomcat" print "Begin......" for i in range(1, 5): ip = 'tomcat' + str(i) run = threading.Thread(target=ssh2, args=(ip, username, passwd, cmd)) run.start()
Python资料:
http://www.cnblogs.com/gannan/archive/2012/02/06/2339883.html