歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

如何判斷讀入字符是回車鍵還是方向鍵

  現在,我們很容易用dd從終端讀入一個字符,但如何判斷一些特殊情形呢?在鍵盤上按下你需要判斷的鍵,如上箭頭,回車後,系統提示:^[[A: not found ^[[A便是我們判斷的依據,腳本示例如下: #!/bin/ksh get_char() { SAVEDSTTY=`stty -g` stty -echo stty raw dd if=/dev/tty bs=1 count=1 2> /dev/null stty -raw stty echo stty $SAVEDSTTY } c=`get_char` case "$c" in '^M' ) echo "enter" ;; '^[' ) echo "possible arrow keys" secondchar=`get_char` thirdchar=`get_char` case "$thirdchar" in 'A' ) echo UP ;; 'B' ) echo DOWN ;; 'D' ) echo LEFT ;; 'C' ) echo RIGHT ;; esac esac 大家也可以直接改造get_char,使之能夠直接返回ESC序列. 自己給自己回復以下. 偶不習慣看到沒有回復的帖子.hihi 大家也可以直接改造get_char,使之能夠直接返回ESC序列. 請問如何改造呢。。。。。? 斑竹,你是如何學好的?給我發兩本電子文檔書(你認為經典的,對我肯定有幫助的)。 To goodboy:到我的FTP上看一下.上邊有基本shell編程的書. 不知你信不信,我本人並沒看過那些書.不過也許因此走了不少彎路.現在懂的那一點點,有的來自系統管理方面的書,來自man的,來自bbs的,說不清楚.時間久了,積累罷了. 怎樣改成在sh下也能運行?




Copyright © Linux教程網 All Rights Reserved