本篇出處: SHELL SCRIPTING 教學與心得 by 許景超

這個範例中有 expect 的應用。


# 系統登入後 提示選單 選擇連上 PTT BBS (2007/03/22新增)


這是懶人的做法, 就是登入login系統後, 出現一個選單, 選單內
讓你能夠選擇連上 PTT BBS , 並且自動登入 PTT BBS , 這個有利用
expect , 也就是hacker喜歡用的一個工具 , 直接看例子吧 :

檔案 1 : 命名 bbs.sh

#!/bin/bash

while [ 1 ]; do
   clear
   echo "==================================================="
   echo "  (1) PTT BBS          "          #註解:我只給一個選項 for test
   echo "  (q) QUIT             "          #註解:要更多 請自己加
   echo "  (0) 離開選單         "          #註解:要更多 請自己加
   echo "==================================================="
   echo -n "your choice? ==> "
   read ans
   case $ans in
        1)
           ptt.expect                #註解:所以你還必須有個 ptt.expect 檔案
           ;;
        q)
           kill -9 $MY_PID     #註解:這個必須在你的 .login 中註明
           ;;
        0)
           exit
           ;;
        *)
           echo "Please choose the number from the list"
           ;;
   esac
done
檔案結束


檔案 2 : 命名 ptt.expect           #系統必須安裝expect套件喔

#!/usr/local/bin/expect --         #註解:路徑請自行修改喔
set host 140.112.90.72             #註解:這裡是ptt.cc的 IP , 用ptt.cc也OK

spawn telnet $host

expect "入代號"
send "superman "                 #註解:把你的帳號名稱放這裡
expect "輸入您的密"
send "supermanisgoodboy "        #註解:把你的密碼放這裡

send " "

interact
檔案結束

檔案 3 : $HOME/.login  or $HOME/.bashrc  or $HOME/.tcshrc
         依照你自己設定 看看你一進入系統會讀取哪個檔案
         我只有用兩行 說明  當然你可能還有自己的變數 or 設定

export MY_PID $$        #註解:這個是給 bbs.sh 用的
bbs.sh                  #啟動剛剛的 bbs.sh  路逕自己寫.
檔案結束

創作者介紹

胖虎的祕密基地

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