python三方库之paramiko

看源码+实验

第一步:

class SSHConfig(object):

这个类的主要作用就是用来解析ssh配置文件,/etc/ssh/sshd_config      注意是解析sshd_config

配置文件可以看做键值对组成的

ssh_config = SSHConfig()

ssh_config.parse(open('/etc/ssh/sshd_config'))

print ssh_config._config

class LazyFqdn(object):

fqdn是什么?是指主机名加上全路径

if fqdn is None:
    fqdn = socket.getfqdn()


第二步:

class SSHClient

SSHClietn是一个上层的封装。

context managers.
context manager上下文管理器,这个翻译好不适应。

语句体(with-body):with 语句包裹起来的代码块,在执行语句体之前会调用上下文管
理器的 __enter__() 方法,执行完语句体之后会执行 __exit__() 方法。



参考自:

使用paramiko进行文件上传或下载

transport = paramiko.Transport(('192.168.3.201', 22))

transport.connect(username='root', password=yourpasswd)


sftp = paramiko.SFTPClient.from_transport(transport)

try:

 sftp.get(remotepath, localpath)

 sftp.put(localpath, remotepath)

finally:

 sftp.close()

 transport.close()

使用paramiko远程执行命令

首先要建立一个SSHClient的实例,并进行连接,然后调用exec_command()方法,执行命令。


posted @ 2022-03-06 10:39  叶常落  阅读(83)  评论(0编辑  收藏  举报