-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathuploadfile.py
More file actions
46 lines (35 loc) · 1.09 KB
/
uploadfile.py
File metadata and controls
46 lines (35 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#! /bin/python
import init
import paramiko
import os,time, sys
username = init.username
password = init.newpassword
ips = init.ips
#when testing
#password = newpassword
def out(con):
print con
def usage():
out("Usage: python %s local_file remote_directory" % (sys.argv[0]))
def upload(lf, rd):
if os.path.isfile(lf):
fname = os.path.basename(lf)
fpath = os.path.abspath(lf)
for ip in ips:
ssh = paramiko.Transport((ip, 22))
#ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(ssh)
out("################################ %s ################################## " % ip)
sftp.put(fpath,rd + os.path.sep + fname)
out("[OK] upload %s success " % fname)
sftp.close()
if __name__ == '__main__':
if len(sys.argv) < 2:
usage()
exit()
lf = sys.argv[1]
rd = "/work/do"
if len(sys.argv) == 3:
rd = sys.argv[2]
upload(lf, rd)