将Linux命令设置成键盘快捷键的方法

落彩忧云

落彩忧云

2016-02-19 08:56

下面图老师小编跟大家分享将Linux命令设置成键盘快捷键的方法,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

我们都知道,Linux系统操作大部分都需要使用命令完成,但命令多了操作起来较为繁琐,如果将常用命令设置成键盘快捷方式则简单很多,下面图老师小编就给大家介绍下将Linux命令设置成键盘快捷键的方法,感兴趣的朋友一起来看看吧。

 将Linux命令设置成键盘快捷键的方法

可以把任何命令或命令的组合指定给键盘上的某个键,可以是Alt+[A-Z],

Ctrl-[A-Z], Alt+Shift+[A-Z], F1-F12, Ctrl-F[1-12], Alt-F[1-12], Alt+Shift+F[1-12],还有更不可思议的是甚至还可以为功能键加上参数,这样你按下那个键的时候,它会等待你输入相应的参数,并根据不同的参数运行不同的命令。

当然,有一些热键会被终端所捕获,如常见的Ctrl-D/C/Q/Z等,不过没关系,可用的热键还多着呢!

定义热键的配置文件为:/etc/inputrc 或 ~/.inputrc,定义热键的格式如下:

《热键对应的ASCII字符》:《执行的命令》

其中热键对应的ASCII字符可以通过 先按Ctrl-V, 然后按热键 的方式来输入, 如Ctrl-G对应的字符为^G, Alt-P对应的字符为^[p, Ctrl-Alt-H对应的字符为^[^H.

可以用/C来代替Ctrl,/M来代替Alt, /M-/C来代替Alt-Ctrl, 如/C-M = Ctrl-M, /M-/C-H = Alt-Ctrl-M. 另外还可以用/e代表^[。

先来看一些基本的热键定义,(这里热键里的字母不区分大小写):

^[-:su -/C-M # 按Alt+- 执行su - 命令,末尾/C-M表示输入完定义的命令后回车,也可以更简洁地用一个/n来表示。

/M-/C-G:gaim & &》/dev/null && disown/C-M

# 按Ctrl-Alt-g在当前shell打开gaim, 并脱离该shell独立运行,即:即使你退出了该shell, gaim也不会关闭

其他一些组合键可以根据自己的需要配置,偶就不多说了。

大家也许会觉得这样定义热键太乱了,而且很难记住,还有一定的限制。这个问题在后面会得到解决。

一般情况下,我们可以使用上下方向键来查找命令历史列表,以此重复输入命令,但是方向键离主键盘区太远,如》果频繁使用的话,会耽误不少时间,而且挪动右手时也不太方便,有没有什么办法把方向键的功能转移到我们经常》敲命令的地方呢?如使用Alt+J = Down Arrow 向下查找,Alt+K=Up Arrow 向下查找

通过定义热键可以做到这点:

/eh:^[OD # move left

# Alt-H 向左移一个字符, 相当于Left Arrowgh, 这里^[OD即向上方向键的ASCII字符,输入方式与前面提到的类似

/el:^[OC # move right

# Alt-L 向右移一个字符,相当于Right Arrow

/ej:^[OB # move up

# Alt-J 向下移动,相当于Up Arrow

/ek:^[OA # move down

# Alt-K 向上移动,相当于Down Arrow

/ei:^? # left earse one character

# Alt-I 向左删除一个字符,相当于Backspace

/eo:delete-char # right earse one character

# Alt-O 向右删除一个字符,相当于Delete

/en:backward-kill-word # left kill one word

# Alt-N 向左删除一个单词

/em:kill-word # right kill one word

# Alt-M 向右删除一个单词

/ea:^[n^[n^[n^[n^[n^[n^[n # kill to the head

# Alt-A 删除当前位置到开头,也就是多Alt-N几次(A--》 ahead)

/ee:^[m^[m^[m^[m^[m^[m^[m # kill to the head

# Alt-E 删除当前位置到末尾,也就是多Alt-M几次(E--》 end)

/ep: insert-last-argumem

# Alt-P 插入上一个命令最后一个参数 (P--》 Paste)

/ew: forward-word

# 系统默认Alt-F (forward)跳到当前单词词尾,如果已在词尾,则跳到下一个单词(右边一个单词)词尾

/eq: backward-word

# 系统默认Alt-B (backward)跳到当前单词词首,如果已在词首,则跳到上一个单词(左边一个单词)词首

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

发觉F和B键离得太远,不方便,偶分别改作Alt-Q, Alt-W, 但是Alt-F/B照样可以用

这样输入命令的时候几乎可以不用离开主键盘区,而且移动光标,删除字符,删除单词,上下历史命令查找都集中》在一块,比以前方便多了。不过开始可能有些不习惯,就跟使用vi一样,需多练几次。

Linux下绝大部分服务的配置是基于配置文件的,一般说来,更改了某个服务的配置文件,要使其立即生效,还需重启该服务直接的或依附的守护进程才行。难道你就不觉得每次 vi /etc/xxx.conf 完后又 service xxx restart/reload 或 killall -HUP xxx这样做很繁琐么?如果要配置的服务较多而且要不停地调试呢?况且我们平常使用Linux时难免会不时地终止或启动某个服务进程,输入命令的次数也不少。如果为每个服务都指定一个热键的话,似乎不大可能。如果我们赋予一个热键为一个基本键,而相应的服务为其参数,那又如何呢?

举个例子,赋予Alt-S (S--》Start)为启动服务的基本键,服务名的前2个字符为启动参数,那么就可以像下面那样随意启动某个服务了:

/essm:service smb start/n

# /es=Alt-s, sm=smb,

# 即:按下Alt-s后紧跟着再输入sm(这时输入的sm并不会显示在终端上),就可以启动samba的服务进程了,不必担心按下键与输入参数间的时间延迟问题,你按下Alt-s,然后去外面兜一圈回来,再接着输入sm,照样可以。

/esht:service httpd start/n # ht=httpd,启动Apache服务

类似地,我们赋予

Alt-D(D--》 shutDown) 为停止服务的基本键

Alt-R(R--》 Restart) 为重启服务的基本键

Alt-T(T--》 Status) 为查看服务状态的基本键

Alt-C(C--》 Configure) 为打开服务对应的主配置文件的基本键

如:/ecnf:vi /etc/exports/n # Alt-c+nf 打开NFS的配置文件

/ecsm:vi /etc/samba/smb.conf/n # Alt-c+sm 打开smb的配置文件

如果某个服务(如ssh)有2个配置文件,可以在其后再加一个数字,如:

/ecssh1:vi /etc/ssh/sshd_config/n # 打开sshd服务端配置文件

/ecssh2:vi /etc/ssh/ssh_config/n # 打开sshd客户端配置文件

如果要执行某个应用程序呢?可以用Alt-x做基本键(x--》 eXeccute) 如:

/exga:gaim & &》/dev/null && disown && clean /n

/exxm:xmms & &》/dev/null && disown && clean /n

/exvm:vmware & &》/dev/null && disown && clean /n /exna:nautilus & &》/dev/null && disown && clean /n

等等。。.。

到现在为止我们只要按1个组合键+2个字符就可以实现下面众多的功能:

1. 执行指定的应用程序

2. 启动|重启|关闭|指定的服务进程

3. 查看指定服务的状态

4. 打开指定服务的指定配置文件

上面就是Linux命令设置成键盘快捷键的方法介绍了,设置成键盘快捷键后,你按下那个键,它会等待你输入相应参数,从而运行不同的命令,可根据个人需求进行设置。

展开更多 50%)
分享

猜你喜欢

将Linux命令设置成键盘快捷键的方法

电脑入门
将Linux命令设置成键盘快捷键的方法

电脑快捷键命令

电脑入门
电脑快捷键命令

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Win XP 键盘快捷键概述

windows 操作系统
Win XP 键盘快捷键概述

cad常用快捷键、命令汇总

快捷键
cad常用快捷键、命令汇总

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

QQ快捷键如何设置?

电脑入门
QQ快捷键如何设置?

Acces数据库键盘快捷键

编程语言 网络编程
Acces数据库键盘快捷键

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

MAC升级10.9后校园网(锐捷)客户端无法连接怎么办?

MAC升级10.9后校园网(锐捷)客户端无法连接怎么办?

简单掌握iOS应用开发中sandbox沙盒的使用

简单掌握iOS应用开发中sandbox沙盒的使用
下拉加载更多内容 ↓