這個 patch 為 telnet 加了兩個參數: -i 與 -s。
-i 後面接時間值,如果使用者在這段時間沒有按下任何按鍵的話將送出字串。時間值的格式是 0~99,單位是分鐘;或是 0s~99s,單位是秒。預設值為 0,也就是取消 timer 的計時。
-s 後面接字串,每閒置一定時間後會依序送出字串內的字元,字串的長度限制為 100 字元(每個中文字包含兩個字元)。若是字串內有空白或是反斜線\等,請用引號括起來(單引號'或雙引號"都可以)。另外字串還會依 C 語言的反斜線跳脫順序(backslash escape sequences)來解釋反斜線後面的字元,以下列出幾個常用的:
\ku | up key | |
\kd | down key | |
\kl | left key | |
\kr | right key (這四個方向鍵的定義是我自己加的) | |
\b | backspace | |
\n | new line 換行 | |
\t | tab | |
\xxx | 一個 ASCII code 是 xxx(八進位)的字元 | |
\\ | blackslash \字元 |
-s 的預設值是 \0(null 字元)。而長度限制是因為我自己覺得 100 字元非常足夠,所以將陣列大小寫成固定值,如果覺得不夠可以加大 externs.h 內 #define idlestrmax 後面的值,或是將 idlestr[] 與 idlestrchar[] 的大小改為動態記憶體配置。
telnet 在連線時可以按下 Ctrl + ] 進入命令模式,此時可以用 set it (等於上面的 -i 參數) 與 set is (等於上面的 -s 參數) 更改時間與字串值,或是用 status 可以查詢現在各參數的狀態。如果一時忘了命令可以用 set ? 查詢。
•telnet -i 10 -s '\0' somehost
設定每閒置 10 分鐘後送出 \0 (送出 null 字元便可以達到防呆目的,而且不會影響使用者任何的操作)
•telnet -i 50s -s 'I am idling\n'
設定每閒置 50 秒後依序送出括號內字元,即等於 I am idling 字串與 enter 鍵
•set it 10s
在命令模式下設定每 10sec 送出字串
•set is '\kl\kl\kl tu'
在命令模式下設定每閒置一定時間後依序送出三個左鍵,一個空白鍵,一個 t 與一個 u
回主頁 | mail to artchiu |