自定义Bash快捷键改变tty颜色
无意中发现一个好玩的,随便记一下。
kenthy#qingdaonews.com 2007-10-12
##################################################################################
一、要点(以下两方面的东东细看起来还蛮多的,有时间再慢慢看看。):
1、在/etc/inputrc或者~/.inputrc文件里可以自己设置bash热键。依次执行“Ctrl + x”、“Ctrl + r”后生效(或重新登陆)
2、使用setterm命令程序可以更改tty终端的前景、背景颜色等
二、步骤:
1、创建修改tty颜色的脚本
# echo 'setterm -background white' > /usr/bin/ChTTYColor
# echo 'setterm -foreground black' >> /usr/bin/ChTTYColor
# chmod a+x /usr/bin/ChTTYColor
//创建一个shell脚本用于改变tty的颜色,以上为分别将前景改为黑色、背景改为白色(其它颜色及setterm的其它用法可以参考man手册)
//脚本创建完毕后,可以直接执行测试一下,看是否能有效改变终端tty的前、背景颜色
//测试发现:setterm改变颜色只在tty上有效,对gnome-terminal等虚拟终端不起作用;
//使用setterm改变颜色后会由于ls --color、man、vi等命令的使用而恢复默认颜色方案
2、定义bash快捷键加载ChTTYColor脚本
# vi ~/.inputrcecho //添加以下一行内容
"\C-p":"ChTTYColor\C-M"
# logout //注销后重新登陆,以后按“Ctrl + p”快捷键即可改变tty终端的颜色
//在~/.inputrc文件中定义了一个快捷键“Ctrl + p”,其中\C表示“Ctrl”键,“\C-M”表示回车键。冒号前边的“"\C-p"”也可以换成“Control-p”
//如果要定义F1、F2之类的功能键,需要先获得这些键的字符序列(如在终端上按“Ctrl + v”、F9键,可获得“^[[20~”),将所得字符序列前边的“^[”换成“\e”即可在.inputrc文件中使用
//如在~/.inputrc文件中定义 "\e[20~":"shutdown -h now \C-M" ,则重新登陆后按F9键即可实现关机
阅读(2667) | 评论(0) | 转发(0) |