• <small id='vz33weal'></small><noframes id='50vzxntx'>

  • <tfoot id='8pec8n7q'></tfoot>

    您的位置:荆州电脑信息网 > 设置问题 > 如何为Linux命令设置快捷键

    如何为Linux命令设置快捷键

    作者:电脑信息网日期:

    返回目录:设置问题


    可以通过软连接 ln 命令创建快捷方式
    自定义命令这个看你怎么定义,
    是简单的alias 设置一下别名?
    还是写个脚本组合命令?

    如果你会c也可以用c写一些操作命令,这个就不清楚你的具体需求了。

    Linux的一e799bee5baa6e997aee7ad94e59b9ee7ad94365个特色就是其命令多而且功能强大, 频繁输入命令不仅麻烦而且工作量较大,虽然可以使用TAB进行>命令补足,或者使用aliase来简化某个命令的输入,但这并不能从根本上解决敲击键盘次数过多的问题。

    可以把任何命令或命令的组合指定给键盘上的某个键,可以是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)跳到当前单词词首,如果已在词首,则跳到上一个单词(左边一个单词)词首

    发觉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. 打开指定服务的指定配置文件

    几种方法可以实现:

    1、使用上行箭头或Ctrl+P键,能调回之前的命令。

    2、直接在命令行输入!99 (!和99中间没有空格),重复执行上一个命令。

    例如:

    [test@linux] #!99

    3、按 !! 并回车执行。

    4、输入 !-1 并回车执行。

    在下面的例子中,如果想重复执行第 4 条命令,那么可以执行 !4:

    # history | more

    # !4



    Linux的一个特色就是其命令多而且功能强大, 频繁输入命令不仅麻烦而且工作量较大,虽然可以使用TAB进行>命令补足,或者使用aliase来简化某个命令的输入,但这并不能从根本上解决敲击键盘次数过多的问题。

    可以把任何命令或命令的组合指定给键盘上的某个键,可以是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对应的字符为^7a686964616fe4b893e5b19e339G, 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)跳到当前单词词首,如果已在词首,则跳到上一个单词(左边一个单词)词首

    发觉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. 打开指定服务的指定配置文件
      <tbody id='lti7xnh6'></tbody>

    <tfoot id='p32rn56q'></tfoot>
    • <small id='g7hff2gc'></small><noframes id='3eklgae5'>

      相关阅读

      • 如何为Linux命令设置快捷键

      • 电脑信息网设置问题
      • 可以通过软连接 ln 命令创建快捷方式自定义命令这个看你怎么定义,是简单的alias 设置一下别名?还是写个脚本组合命令?如果你会c也可以用c写一些操作命令,这个就不清楚你的具体
      关键词不能为空

      标签导航

      手机铃声怎么设置让对方打来也能听到 怎样设置手机,能让对方打电话时听到我的铃声? 怎样让自己设计的手机来电铃声让对方也听到? 怎么设置别人打来就可以听到的手机铃声? 如何关闭win7开机时放大镜自启 win7电脑中怎么开启打开,关闭放大镜工具 怎么关闭vivox5sl放大镜 深度Win7旗舰版系统如何开启放大镜功能 win10开机后状态栏一直未响应无法操作是怎么回事? win10系统启动后,任务栏无响应? win10开机之后,点击任务栏和上面的图标都没有反应 win10系统开机后一直这样,点图标没反应,点桌面直接未响应... 如何为“Linux命令”设置快捷键? 如何创建linux命令”快捷方式”或”自定义 Linux命令怎么设置成键盘快捷键 如何创建linux命令”快捷方式”或”自定义命令” WIN7如何将两个用户的其中一个设置为默认 WIN7开机有两个用户 开启win7时有两个帐户选择 怎么让电脑开机后win7自动登... 怎么使WIN7启动时自动登录两个管理员帐户其中一个? 谁知道安装软件是系统默认路径是c盘,怎么调整到默认安装到d盘 小弟跪求,电脑系统默认软件总是装在C盘,能不能把系统设置成默... 怎么改软件默认的安装路径从C盘改成D盘 win10软件默认安装路径为C盘怎么修改 win10怎么设置不灭屏 笔记本电脑怎么设置合上盖子以后屏幕也不熄灭,系统是win10... 怎么让win10永不黑屏 win10怎么设置屏幕不黑屏 win10电脑关闭屏幕怎么设置 操作系统是什么意思?具体点 世界三大操作系统 什么叫做操作系统?都包括什么? 主流的电脑操作系统都有哪些? WIN10的系统 蓝牙驱动没问题 重新下载过了 就是搜索不到... 之前我用的是win10,后来重装了系统,装的是win7,为什... 笔记本是win10系统,蓝牙搜索搜索不到设备,怎么解决?驱动... win10蓝牙搜索不到设备 怎么修改IE浏览器的默认下载方式? 如何设置IE自带下载器 我的ie浏览器下载老是默认迅雷 怎么设置成IE自带的下载文件... ie浏览器网页下载默认的文件夹在哪,怎么修改? win7系统下怎么安装bootcamp win7界面怎么安装bootcamp Boot Camp5.1.2怎么安装win7? bootcamp5.1.2只能安装win8吗?能装win7吗 常出现Microsoft windows internet ... win10使用Internet Explorer打开 没反应 Win10系统IE出错提示“internet explore... windows10 internet explorer 停止... 我想创建电子邮件,手机怎么创建 如何设置电子邮箱? 手机上的电子邮件怎么用? OPPO手机的电子邮箱怎样设置? win7下怎么改文件格式

      电脑蓝屏,win7,win10相关问题_荆州电脑信息网