#!/usr/bin/python import ConfigParser import sys import os conf = ConfigParser.ConfigParser() conf.read("/home/cc/.bin/config.ini") agent_ip = conf.get("agent", "agent_ip") agent_path = conf.get("agent", "agent_path") agent_name = conf.get("agent", "agent_name") def trans_file_to_agent(file_name): if None == file_name: print 'None == file name' cmd = 'scp ' + file_name + ' ' + agent_name+'@'+agent_ip+':'+agent_path print cmd os.popen(cmd) def sync_file_to_dev(file_name,ip): if None == ip: print 'None ==ip' exit(1) global conf try: user = conf.get(ip,'dev_user') path = conf.get(ip,'dev_path') except ConfigParser.NoSectionError: print 'Get info fail ' + ip exit(1) cmd_prefix = 'ssh ' + agent_name+'@'+agent_ip+' "' cmd_suffix = 'scp ' + file_name + ' ' + user+'@'+ip+':'+path + '"' cmd = cmd_prefix + cmd_suffix print cmd os.popen(cmd) if __name__ == '__main__': if 3 == len(sys.argv): print '------------------------------------------------------------' print 'trans file:' + sys.argv[1] + ' to ' + sys.argv[2] + ' by agent ' + agent_ip print '------------------------------------------------------------' trans_file_to_agent(sys.argv[1]) print '------------------------------------------------------------' sync_file_to_dev(sys.argv[1],sys.argv[2]) print '------------------------------------------------------------' print 'sync done'
配置文件:
[agent] agent_name=Administrator agent_path=/home/Administrator/ agent_ip=10.190.14.57 [60.60.12.101] dev_user=root dev_path=/mnt/cfdisk2/cc/ [60.60.12.102] dev_user=root dev_path=/mnt/cfdisk2/cc/ [60.60.60.105] dev_user=root dev_path=/mnt/cfdisk2/cc/