最基礎的兩個指令,expect, send

先輸入 expect 進 expect 的互動文字介面,打 expect "hi" { send "hello\n" }
然後輸入 hi ,就可以看到 hello

可以同時等兩種回應的寫法:expect "hi" {send "hello\n"} "boo" {send "hooray!\n" }
也可以搭配 set timeout 來指定等候時間,這樣可以在某段時間沒回應的情況,自動輸出字串。

spawn 是可以執行一個外部指令,執行完,接下來的 expect/send 就都是針對這個 process,這邊舉了一個實用的例子,可以自動登入 FTP ,輸入帳號、密碼,然後抓取檔案,最後再把取得的檔案解壓縮。解壓縮的部分是用 exec 來執行外部指令。

interact 則是將輸出入交回給 spawn 出去的 process,這時候就得用鍵盤輸入之後,才能繼續。

更多有關 Exploring Expect 的事情

arrow
arrow

    elleryq 發表在 痞客邦 留言(0) 人氣()