3
我創建一個用戶,並要設置SSH密鑰對用戶掛的paramiko當使用ssh-keygen命令
我的劇本是
import paramiko
ssh_conn = paramiko.SSHClient()
ssh_conn.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_conn.load_system_host_keys()
ssh_conn.connect('localhost', username='test', password='test')
cmd = 'ssh-keygen -t dsa'
stdin, stdout, stderr = ssh_conn.exec_command(cmd)
stdin.write('\n')
stdin.flush()
stdin.write('\n')
stdin.flush()
stdin.write('\n')
stdin.flush()
print "Output: ", stdout.read()
但它似乎不工作
當我將它作爲單個語句在python控制檯上覆制過去,然後運行,但是當我將它作爲單個python腳本運行時,它掛在最後一行print "Output: ", stdout.read()
。
THX在您的幫助:)
Thx @mac求助 – Nilesh
嗨@mac如果我不會在'stdin.channel.shutdown_write()'後面寫'stdout.read()'並執行一些其他任務,那麼它將不會生成.pub文件那時候。手段是否有任何方法來檢查命令完成其執行? – Nilesh