時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)
一直想通過Bash實現(xiàn)像VI編輯器中那樣,按一個鍵便自行執(zhí)行某種操作,一個偶然的機會發(fā)現(xiàn)stty可以實現(xiàn)。
請先看腳本:
#!/bin/sh
# 我們可以通過這個腳本來實現(xiàn),對按鍵的自動檢測。至于用作什么,大家仁者見仁,智者見智了就,"英雄必有用武之地的"。
# 2009-12-29 13:00:54 update
# wangxiaoyu(AT)live.com From https://wangxiaoyu.blog.51cto.com
_tty_setting=$(stty -g)
stty -icanon
stty -echo
# We can use c2 arguement to use keyboard shortcut with 2 characters.
_key_press=$(head -c1)
stty $_tty_setting
# 下面是對輸入進(jìn)行判斷的部分
#
case $_key_press in
A) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串1\n"
;;
2) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串2\n"
;;
3) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串3\n"
;;
4) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串4\n"
;;
5) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串5\n"
;;
6) echo -en "我們這里可以替換成我們所要執(zhí)行的命令字符串6\n"
exit 1;;
*) echo -en "這里可以替換成腳本的幫助信息相關(guān)的命令\n"
esac
附注:
stty是用于顯示和修改終端設(shè)置的,這個復(fù)雜的命令可以用在腳本中,用來控制終端 的行為或者顯示輸出的方法。結(jié)合特殊字符以及case或其它條件判斷,我們很容易就可以實現(xiàn)像按下Ctrol + F 實現(xiàn)搜索文件。
腳本中。stty -g 是用來記錄stty的參數(shù),終端修改后在使用完畢后及時復(fù)原。
其中 stty -echo 這個很常用,常用來用來要求用戶輸入密碼時用。
關(guān)鍵詞標(biāo)簽:Linux
相關(guān)閱讀
熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程使用screen管理你的遠(yuǎn)程會話GNU/Linux安裝vmware如何登錄linux vps圖形界面 Linux遠(yuǎn)程桌面連
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址linux tc實現(xiàn)ip流量限制dmidecode命令查看內(nèi)存型號linux下解壓rar文件安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程Ubuntu linux 關(guān)機、重啟、注銷 命令lcx.exe、nc.exe、sc.exe入侵中的使用方法查看linux服務(wù)器硬盤IO讀寫負(fù)載