Unix程式設計/應用問答中文版 ---19.終端相關問題(轉)

post0發表於2007-08-10
Unix程式設計/應用問答中文版 ---19.終端相關問題(轉)[@more@]

作者:不祥 [文章出自: ]

19. 終端相關問題

19.1 如何使Backspace鍵做刪除操作,而不是顯示^H

19.2

19.3 如何清空stdin的緩衝

19.4 Linux Console下一按錯鍵就叫,怎麼關

--------------------------------------------------------------------------

19. 終端相關問題

19.1 如何使Backspace鍵做刪除操作,而不是顯示^H

Q: Backspace鍵並未刪除游標左面那個字元,僅僅顯示^H,而DEL鍵完成了刪除操作

A: Sun Microsystems 2001-03-08

執行"stty -a"將看到"erase = ^?",表示此時DEL鍵對應刪除操作。

如果正在使用xterm,可以用"tset"命令設定控制字元對應的操作。其他視窗中,假

設目前使用/sbin/sh,嘗試

$ stty erase ^H

這裡^H的輸入是Ctrl-H,某些時候可能需要Ctrl-V、Ctrl-H輸入,還可以嘗試

$ stty erase "^h"

$ stty erase "^H" (大小寫不敏感)

這裡輸入"^H",就是兩個字元,一個^,一個H。

同樣,如果想恢復到DEL刪除

$ stty erase ^?

這裡^?的輸入是DEL,某些時候可能需要Ctrl-V、DEL輸入,還可以嘗試

$ stty erase "^?"

這裡輸入"^?",就是兩個字元,一個^,一個?。

為了永久保留這個設定,在所使用的shell初始化檔案中增加設定命令,比如c shell

的".cshrc",其他shell的".login"。

19.3 如何清空stdin的緩衝

A: law@apue.dhs.org

stdin->_IO_read_ptr = stdin->_IO_read_end;

不過這個辦法實在不怎麼樣。一是隻對glibc有效,不可移植。二是違背流的思想,

老老實實用fgets()好了。

19.4 Linux Console下一按錯鍵就叫,怎麼關

A: windtear@bbs.tsinghua.edu.cn Linux版

有個1050110 背一下就可以了

echo -e "\33[10;50]\33[11;0]"

10 50 11 0

放到那些登入言啟動指令碼里

Q: 輸完命令後是沒聲了,可從KDE回來之後又有了,請問能徹底關掉嗎

A: TheCool@bbs.tsinghua.edu.cn Linux版

setterm -blength 0 -bfreq 0

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-940451/,如需轉載,請註明出處,否則將追究法律責任。

相關文章