看板 Python 關於我們 聯絡資訊
HI 大家好 新手有些問題想請教 我想用python 寫一個自動登入並執行重開機的script 遇到幾個問題: 1. 遠端沒辦法登入,但我手動telnet是可以登入的 error message是說我被timeout了,但我不知道為什麼被timeout QQ ===== CODE ===== 前面一些變數都已定義 global tel prompt = '#' username = 'root' password = 'password' tel.logfile_read = sys.stdout tel.sendline ('\r') tel.sendline ('\r') tel.sendline ('\r') tel.sendline ('\r') tel.sendline ('\r') tel.sendline ('\r') tel.sendline ('\r') tel.expect ('login:', timeout=700) tel.sendline (username) tel.expect ('Password:') tel.sendline (password) tel.expect (prompt) 2. 另外,如果註解掉 #tel.sendline ('\r') 這幾行 第一次可以登入並下指令重開機,但做第二次時,一樣被timeout 想不通哪裡有問題QQ 懇請各位先進相救... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.1.151 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1431322330.A.769.html
Neisseria: 用 telnet 不太好吧,現在不是都用 ssh 了嗎? 05/11 13:38
shiyeh: 因為只是測試機器而已 所以加不加密不用考慮@@ 05/11 13:41
gh40402: 你要不要改用 read_until 試試啊 05/11 15:40
gh40402: 官網底下有範例code 05/11 15:41
先感謝提供資訊 沒錯,我如果用read_until()跟write()來做,這樣OK 只是我想知道份code的root course是什麼? 看樣子是pexpect.py的問題? ※ 編輯: shiyeh (220.137.1.151), 05/11/2015 16:16:57
gh40402: 就沒 expect 到 login: 吧... 你確定不是大寫L? 05/11 17:34
gh40402: 喔 我錯了 是小寫l沒錯 05/11 17:35