paramiko是用來(lái)遠(yuǎn)程執(zhí)行命令的模塊,
下面是ssh和scp的的兩個(gè)例子
1- ssh
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
command = 'ls'
username = ""
port = 22
client = paramiko.SSHClient()
# 其中l(wèi)oad_host_keys一般配合save_host_keys來(lái)使用,
# load_system_host_keys可以指定主機(jī)密鑰文件,
# 如果不指定默認(rèn)就是家目錄下的.ssh目錄下的known_hosts文件。
client.load_system_host_keys()
client.connect(hostname=hostname, port=port,
username=username, password=password)
stdin, stdout, stderr = client.exec_command(command)
print(stdout.read())
client.close()
2- scp
這里是直接把服務(wù)器上面的的文件復(fù)制下來(lái)
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
source = '/root/tmp.txt' # 服務(wù)器上的文件
dest = r'D:\\tmp\\tmp.txt' # 本機(jī)的文件
username = ""
port = 22
t = paramiko.Transport((hostname, port))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.get(source, dest)
t.close()
3- load_system_host_keys
函數(shù)的源碼
def load_system_host_keys(self, filename=None):
if filename is None:
# try the user's .ssh key file, and mask exceptions
filename = os.path.expanduser("~/.ssh/known_hosts")
try:
self._system_host_keys.load(filename)
except IOError:
pass
return
self._system_host_keys.load(filename)
從這里可以看出,
load_system_host_keys
默認(rèn)從~/.ssh/known_hosts
里面獲取服務(wù)器,
否則要自己提供一個(gè)文件,
這里需要注意一下。
4- 參考的鏈接
- paramiko的ssh和scp
-
模塊
+關(guān)注
關(guān)注
7文章
2787瀏覽量
50212 -
命令
+關(guān)注
關(guān)注
5文章
737瀏覽量
22839 -
執(zhí)行
+關(guān)注
關(guān)注
0文章
16瀏覽量
12719
發(fā)布評(píng)論請(qǐng)先 登錄
手機(jī)也能玩Linux服務(wù)器——NOKIA手機(jī)高端應(yīng)用
遠(yuǎn)程登陸linux
【Banana Pi M1+試用體驗(yàn)】BananaPi-M1+之串口登陸、vnc遠(yuǎn)程登陸
【Banana Pi M1+試用體驗(yàn)】BananaPi-M1之搭建FTP服務(wù)器
【NanoPi NEO Plus2開(kāi)發(fā)板試用體驗(yàn)】tomcat+mysql+natapp搭建服務(wù)器(域名登陸)---續(xù)
遠(yuǎn)端機(jī)器的臨時(shí)執(zhí)行命令
賬號(hào)登陸問(wèn)題
求一份基于RK3399的Samba共享服務(wù)器設(shè)計(jì)方案
在華為彈性云服務(wù)器上遠(yuǎn)程編譯RK3568的相關(guān)資料介紹
CAD中如何快速重復(fù)執(zhí)行命令?
freeSSHD+PuTTY+UE實(shí)現(xiàn)SFTP服務(wù)器搭建配置和登陸

評(píng)論