Python使用pxssh模塊進行遠程SSH連接
使用方法都寫在程序裏面的註釋中,請盡情享用,如果您覺得不錯可以點個贊哦🙂
代碼如下:
"""
使用pxssh模塊進行遠程連接服務器
注意事項:
1. 確保本地機器和遠程機器都開啓ssh服務
2. 該模塊不支持在Windows系統中使用(可以使用Linux系統來驅動該模塊)
"""
# -*- coding:utf-8 -*-
import getpass
from pexpect import pxssh
__author__ = 'Evan'
def remote_connection():
"""
使用ssh協議遠程到指定服務器
:return:
"""
remote_machine = input('remote machine: ')
username = input('username: ')
password = input('password: ')
# pasword = getpass.getpass('password: ') # pycharm中無法使用此功能
# 實例化pxssh,使用login進行遠程登錄
s = pxssh.pxssh()
# original_prompt參數爲終止符,需要提供終止符響應命令結果,如:original_prompt='>' or original_prompt='#'
s.login(remote_machine, username, password, original_prompt='[$#>]') # original_prompt='[$#>]'表示匹配中括號內的任意字符
s.sendline('ls -l') # 發送命令
s.prompt() # 匹配終止符內的字符串,匹配到了則停止接受字符
print(s.before) # s.before爲命令起始符到終止符中間的所有字符,即命令 'ls -l' 的執行結果
s.logout() # 退出ssh服務
if __name__ == '__main__':
remote_connection()