如何使用Paramiko庫(kù)遠(yuǎn)程操作服務(wù)器
安裝Paramiko在進(jìn)行遠(yuǎn)程服務(wù)器操作前,首先需要安裝Paramiko庫(kù)。通過(guò)pip命令可以輕松安裝Paramiko,只需執(zhí)行以下命令:`pip install paramiko`。編寫(xiě)Python
安裝Paramiko
在進(jìn)行遠(yuǎn)程服務(wù)器操作前,首先需要安裝Paramiko庫(kù)。通過(guò)pip命令可以輕松安裝Paramiko,只需執(zhí)行以下命令:`pip install paramiko`。
編寫(xiě)Python腳本
打開(kāi)Python開(kāi)發(fā)工具IDLE,新建一個(gè)名為‘’的文件,并編寫(xiě)以下代碼:
```python
coding:utf-8
import paramiko
ssh ()
_missing_host_key_policy(())
```
以上代碼中,我們導(dǎo)入Paramiko庫(kù)并創(chuàng)建了一個(gè)SSHClient實(shí)例,并設(shè)置了自動(dòng)接受新主機(jī)的密鑰策略,類似于第一次使用SSH連接時(shí)點(diǎn)擊"Yes"的操作。
連接遠(yuǎn)程服務(wù)器
繼續(xù)添加以下代碼以連接遠(yuǎn)程服務(wù)器,包括服務(wù)器的IP地址、用戶名、密碼和端口號(hào):
```python
('192.168.128.128', 22, 'username', 'password')
```
記得在測(cè)試時(shí)將服務(wù)器地址更改為實(shí)際使用的服務(wù)器地址。
執(zhí)行遠(yuǎn)程命令
接下來(lái),我們可以編寫(xiě)代碼在遠(yuǎn)程服務(wù)器上執(zhí)行命令,比如執(zhí)行‘df’命令,并使用stdout接收返回的流,stderr用于返回錯(cuò)誤信息:
```python
stdin, stdout, stderr ssh.exec_command('df')
```
輸出執(zhí)行結(jié)果
繼續(xù)完善代碼,打印出執(zhí)行‘df’命令返回的數(shù)據(jù):
```python
print(())
()
```
運(yùn)行程序時(shí)可能會(huì)看到許多警告信息,這些是安全性提醒,暫時(shí)可以忽略。返回的信息通常是UTF-8格式的亂碼。
解碼返回?cái)?shù)據(jù)
為了更好地展示返回的數(shù)據(jù),我們可以對(duì)其進(jìn)行解碼,代碼如下:
```python
print(().decode('utf-8'))
```
再次運(yùn)行程序,應(yīng)該能正常打印出‘df’命令的執(zhí)行結(jié)果,與使用SSH工具相同。通過(guò)Paramiko庫(kù),我們可以方便地在Python中操作遠(yuǎn)程服務(wù)器,執(zhí)行命令并獲取返回結(jié)果。