vi中的vi-r_在外壳中使用vi-mode

vi中的vi-r

作为更大的开源社区的参与者,更具体地说,作为Fedora项目的成员,我有机会与很多人见面并讨论各种有趣的技术主题。 我最喜欢的一个是“命令行”或shell ,因为了解人们如何熟练使用shell可以使您深入了解他们的想法,他们喜欢的工作流程以及某种程度上使他们打勾的东西。 许多开发人员和系统操作员在Internet上公开共享他们的“点文件”(shell配置文件的通用语),这导致了一个有趣的协作机会,使每个人都可以从经验丰富的命令行老手那里学习技巧。以及共享常见的快捷方式和提高工作效率的方法。

在这里,我将通过演示Shell的vi模式为您介绍一个。

在庞大的计算和操作系统生态系统中,有许多外壳 。 但是,在Linux世界中,事实上的标准已成为bash,并且在撰写本文时,它是所有主要Linux发行版上安装的默认Shell。 因此,这就是我今天要讨论的外壳。 不过要注意的是,bash在其他UNIX风格的操作系统上也是一个相当流行的选项,因此它可能距离您不远(对于Windows用户而言,总是有cygwin )。

在探索外壳程序时,要做的第一件事是在外壳程序中键入命令,并且通常会得到输出,如下所示:



   
   
$ echo "Hello World!"
Hello World !

这是常见的做法,可能是每个阅读此书的人都做过的事情。 新手和新手都可能没有意识到的是, bash shell的默认输入模式是Emacs ,这意味着您将在命令上执行的所有行编辑功能都将使用“ Emacs样式”键盘组合 。 (对于那些对事物的细节感兴趣的人,线编辑功能实际上是由GNU Readline执行的 。)

例如,如果您键入echo“ Hello Wrld!”。 并且意识到您想快速跳回一个单词(以空格分隔)来解决该拼写错误,而无需按住左箭头键,那么您将同时按下Alt + b键,光标将向后跳转到W。



   
   
$ echo "Hello Wrld!"
              ^
        Cursor is here.

仅使用提供给外壳用户的许多Emacs键盘组合之一来完成此操作。 还有更多的功能可用于各种用途,例如复制文本,粘贴文本,删除文本以及使用快捷方式编辑文本。 使用复杂的键盘组合并将它们提交到内存可能看起来很愚蠢,但是当使用更长的命令或从shell历史记录中调用命令但又想在再次执行命令之前进行一些编辑时,它们可能会非常强大。

尽管如果您熟悉Emacs文本编辑器或以其他方式发现它们易于使用,Emacs按键绑定都很好,但是有些人则更习惯使用“ vi风格”的键盘绑定,因为它们花在了vi上文本编辑器(通常这些天通常通过vimnvim )。 bash shell(再次通过GNU Readline)能够为我们提供此功能。 为了启用它,运行命令$ set -o vi

就像魔术一样,您现在处于vi模式,并且可以使用vi样式的快捷键轻松进行行编辑,以便复制文本,删除文本以及跳到文本行中的不同位置。 这是不是在Emacs的模式的能力方面非常不同的,但它是如何你互动与外壳来执行这些动作的改变,这是你的特定偏好以待功能强大的选择。

让我们看一下与前面相同的示例,但是在上下文中,一旦您进入shell的vi模式,您就处于INSERT模式,这意味着您可以像以前一样键入命令,但是现在可以按键盘上的Esc键,您将进入正常模式,在这里您可以自由浏览并修改文本。

查看与前面相同的示例,如果您键入了echo“ Hello Wrld!”。 并意识到您想跳回一个单词(再次用空格分隔)来修正该拼写错误,然后您将按Esc键从INSERT更改为NORMAL模式。 然后,您可以键入B (对于在家中跟随的用户,请按Shift + b ),这将使光标向后移动,就像以前一样。 (有关vi模式的更多信息,请转到此处 。):



   
   
$ echo "Hello Wrld!"
              ^
        Cursor is here.

现在,对于在那里的vi / vim / nvim用户来说,这是一个有趣的“啊哈!” 当您意识到可以随时关闭真正的键盘快捷键的可能性,而不仅仅是在编辑器中编写代码或文档之时。 如果这对您来说是新事物,并且您想了解更多,那么我建议您浏览此交互式vim教程 ,看看是否可以使用vi样式编辑文本。

如果喜欢在此模式下与外壳进行交互,则可以通过在主目录中编辑〜/ .bashrc文件并在底部添加以下行来永久设置该设置。

设置-o vi

对于emacs模式用户,希望这是对Shell的“另一面”的快速而有趣的了解。 归根结底,我认为每个人都应该使用使他们工作效率最高的任何编辑器和shell行编辑模式,如果这是vi模式,那么本文对您来说是新闻,那么恭喜您! 现在继续前进,提高生产力。

骇客入侵...

翻译自: https://opensource.com/article/17/3/fun-vi-mode-your-shell

vi中的vi-r

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值