python SSH模塊登錄,遠(yuǎn)程機(jī)執(zhí)行shell命令實(shí)例解析
用python SSH模塊登錄,并在遠(yuǎn)程機(jī)執(zhí)行shell命令
(在CentOS 7 環(huán)境試驗(yàn)成功, Redhat 系列應(yīng)該是兼容的。)
先安裝必須的模塊
# yum install python-dev # yum install python-devel # pip install pycrypto # pip install paramiko # pip install ssh
這些都成功后, 編寫一個Python腳本
# vim remote_run.py
import ssh
# 新建一個ssh客戶端對象
myclient = ssh.SSHClient()
# 設(shè)置成默認(rèn)自動接受密鑰
myclient.set_missing_host_key_policy(ssh.AutoAddPolicy())
# 連接遠(yuǎn)程主機(jī)
myclient.connect("xxx.coder4.com", port=22, username="xxxx", password="xxxx")
# 在遠(yuǎn)程機(jī)執(zhí)行shell命令
stdin, stdout, stderr = client.exec_command("ls -l")
# 讀返回結(jié)果
print stdout.read()
# 在遠(yuǎn)程機(jī)執(zhí)行python腳本命令
stdin, stdout, stderr = client.exec_command("python /home/test.py")
建立一個SSHClient對象以后,除了執(zhí)行命令,還可以開啟一個sftp的session,用于傳輸文件、創(chuàng)建文件夾等等。
# 新建 sftp session
sftp = client.open_sftp()
# 創(chuàng)建目錄
sftp.mkdir('abc')
# 從遠(yuǎn)程主機(jī)下載文件,如果失敗, 這個可能會拋出異常。
sftp.get('test.sh', '/home/testl.sh')
# 上傳文件到遠(yuǎn)程主機(jī),也可能會拋出異常
sftp.put('/home/test.sh', 'test.sh')
總結(jié)
以上就是本文關(guān)于python SSH模塊登錄,遠(yuǎn)程機(jī)執(zhí)行shell命令實(shí)例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
python GUI庫圖形界面開發(fā)之PyQt5輸入對話框QInputDialog詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5輸入對話框QInputDialog詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
使用Python實(shí)現(xiàn)Excel表格轉(zhuǎn)圖片
在數(shù)據(jù)處理與信息分享過程中,Excel表格作為一種強(qiáng)大的數(shù)據(jù)管理工具被廣泛應(yīng)用,這篇文章主要為大家詳細(xì)介紹了如何使用Python將Excel表格轉(zhuǎn)換為圖片,需要的可以參考下2024-04-04
mac安裝scrapy并創(chuàng)建項(xiàng)目的實(shí)例講解
今天小編就為大家分享一篇mac安裝scrapy并創(chuàng)建項(xiàng)目的實(shí)例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06

