使用python自動化運維書,其中一個例子是免祕鑰scp文件。
源代碼:
import pexpect child = pexpect.spawn('scp data [email protected]:~') child.expect('password:') child.sendline('118530')
使用腳本執行一直不能傳輸文件成功,後來通過日誌查詢,程序沒有執行完畢,加上pexcept.EOF(指向緩存區底部,無匹配項)完美解決問題,附修改後代碼:
import pexpect child = pexpect.spawn('scp data [email protected]:~') fout = file('mylog.log','w') <==記錄日誌 child.logfile = fout try: child.expect('(yes/no)?') child.sendline('yes\r') child.expect('password:') child.sendline('118530') except Exception,e: print e child.expect(pexpect.EOF)