#!/usr/bin/python
#-*- coding: utf-8 -*-
import
paramiko
#例項化sshclient
client =paramiko.sshclient()
#自動新增策略,儲存伺服器的主機名和金鑰資訊,如果不新增,那麼不再本地know_hosts檔案中記錄的主機將無法連線
client.set_missing_host_key_policy(paramiko.autoaddpolicy())
#連線ssh服務端,以使用者名稱和密碼進行認證
client.connect(hostname='
localhost
', port=8045, username='
pi', password='
123456')
#開啟乙個channel並執行命令
stdin, stdout, stderr = client.exec_command('
mysql -upi -p123456
') #
stdout 為正確輸出,stderr為錯誤輸出,同時是有1個變數有值
#列印執行結果
print (stdin.write('ls'
))print(stdout.read().decode('
utf-8'))
print(stderr.read().decode('
utf-8'))
#關閉sshclient
client.close()
ssh執行非互動式命令
如果你想用指令碼自動化登入到某台機子上,然後在上邊執行個命令,怎麼辦呢?可以使用ssh的非互動式命令 ssh zhc hongchangfirst.com home hczhang bin build.sh 這裡可以用expect模擬鍵盤輸入將密碼輸入,也可以用無密碼登入,具體就是將自己的公鑰放在對...
Python 實現互動式執行命令
paramiko提供了ssh 客戶端的介面,讓大家在寫指令碼的時候可以remote到遠端的機器上執行命令 有時候在執行某些命令的時候我們需要輸入一些值,接著才往下跑,下面是乙個簡單的指令碼來解決這個動態輸入的問題 service tomcat status root1234 if retcode 0...
互動式介面
互動式介面 啟動終端後,在終端裝置附加乙個互動式應用程式 runlevel 顯示當前執行的模式 root vm 163 113 centos runlevel n 3init 3 切換至命令列 init 0 停機 千萬不能把initdefault 設定為0 init 1 單使用者模式 init 2 ...