詳述Linux bash快捷鍵的使用
Linux bash快捷鍵是很多習(xí)慣使用快捷鍵的朋友們剛剛接觸Linux的人想要知道的,但是網(wǎng)上介紹快捷鍵的文章并不是很多,這里要注意Linux的不同的bash會(huì)有不同的效果,自已一定要注意使用的bash版本,Linux bash快捷鍵也會(huì)有相應(yīng)的不同。
一直想通過Bash實(shí)現(xiàn)像VI編輯器中那樣,按一個(gè)鍵便自行執(zhí)行某種操作,一個(gè)偶然的機(jī)會(huì)發(fā)現(xiàn)stty可以實(shí)現(xiàn)。
請(qǐng)先看腳本:
#!/bin/sh
# 我們可以通過這個(gè)腳本來實(shí)現(xiàn),對(duì)按鍵的自動(dòng)檢測(cè)。至于用作什么,大家仁者見仁,智者見智了就,“英雄必有用武之地的”。
# 2009-12-29 13:00:54 update
# wangxiaoyu(AT)live.com From http://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
# 下面是對(duì)輸入進(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è)置的,這個(gè)復(fù)雜的命令可以用在腳本中,用來控制終端 的行為或者顯示輸出的方法。結(jié)合特殊字符以及case或其它條件判斷,我們很容易就可以實(shí)現(xiàn)像按下Ctrol + F 實(shí)現(xiàn)搜索文件。
腳本中。stty -g 是用來記錄stty的參數(shù),終端修改后在使用完畢后及時(shí)復(fù)原。
其中 stty -echo 這個(gè)很常用,常用來用來要求用戶輸入密碼時(shí)用。
在bash版本里的Linux bash快捷鍵就先說到這里。
【編輯推薦】
- 詳細(xì)介紹Linux shell腳本基礎(chǔ)學(xué)習(xí)(一)
- 簡(jiǎn)單介紹Linux進(jìn)程文件路徑的獲取方法
- 詳細(xì)分析Linux服務(wù)器內(nèi)存
- Linux系統(tǒng)安全提高之安全配置
- 閑談十個(gè)linux管理常見錯(cuò)誤