伺服器:
#遠端執行命令
from socket import *
import
subprocess
ip_port=('
127.0.0.1
',8080)
back_log=5buffer_size=1024tcp_server=socket(af_inet,sock_stream)
tcp_server.bind(ip_port)
tcp_server.listen(back_log)
while
true:
conn,addr=tcp_server.accept()
print('
新的客戶端鏈結
',addr)
while
true:
#收try:
cmd=conn.recv(buffer_size)
#if not cmd:break
print('
收到客戶端命令是
',cmd)
#執行命令,得到命令的執行結果,cmd_res
res=subprocess.popen(cmd.decode('
utf-8
'),shell=true,
stderr=subprocess.pipe,
stdout=subprocess.pipe,
stdin=subprocess.pipe)
err=res.stderr.read()
if err:#
有值 cmd_res=err
else
: cmd_res=res.stdout.read()
#發conn.send(cmd_res)
except
exception as e:
(e)
break
conn.close()
客戶端:
from socket import *ip_port=('127.0.0.1
',8080)
back_log=5buffer_size=1024tcp_client=socket(af_inet,sock_stream)#
資料報tcp_client.connect(ip_port)
while
true:
cmd=input('
>>
').strip()
ifnot cmd:continue
if cmd=='
quit
':break
tcp_client.send(cmd.encode(
'utf-8'))
cmd_res=tcp_client.recv(buffer_size)
print('
命令的執行結果是
',cmd_res.decode('
gbk '))
tcp_client.close()
遠端執行命令
遠端執行命令 這個分兩步,很簡單很實用。第一步,設定ssh免認證,免認證就是只不用密碼認證就可以直接登入,這在寫指令碼伺服器控制時特別有用。ssh keygen t rsa cd ssh ssh copy id xuexi01注 xuexi01是主機名,也可寫成ip,如192.168.2.11 第二...
遠端執行命令
一 需求 server 下發命令 client 執行命令 ssh協議 import os ret os.popen ls read print ret import subprocess 內建模組 和os模組的功能有相似之處 能執行作業系統的命令的功能 ret subprocess.popen di...
ssh遠端執行命令
使用ssh不僅可以登入到遠端的linux主機,還可以執行命令。如果是要登入到遠端linux主機,那麼使用下面的命令 ssh username remoteip example ssh hduser 192.168.0.1 這個將開啟乙個登入到遠端主機192.168.0.1的login shell如果...