paramiko
*paramiko需要PyCrypto模块的支持
paramiko支持通过SSH协议进行一些操作,比如远程执行命令,上下传文件等等
用法:
① 远程命令
ssh =paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#指定当对方主机没有本机公钥的情况时应该怎么办,AutoAddPolicy表示自动在对方主机保存下本机的秘钥
ssh.connect('ip',22,'user','passwd') #SSH端口默认22,可改
stdin,stdout,stderr = ssh.exec_command("命令内容") #这三个得到的都是类文件对象
outmsg,errmsg = stdout.read(),stderr.read() #读一次之后,stdout和stderr里就没有内容了,所以一定要用变量把它们带的信息给保存下来,否则read一次之后就没有了
if errmsg == "":printoutmsg
ssh.close()
② 文件交流
tra = paramiko.Transport(('ip',22)) #参数是一个tuple
tra.connect(username='...',password='...') #一定要指明参数名的username和password。否则会报错str has no attribute 'get_name'
sftp =paramiko.S