乐趣区

关于后端:004-Linux-揭开神器-vim-面纱

01 开篇初识 vim

vim 性能吊炸天,但咱们把握一些罕用的命令即可应答日常的应用了,不记流水账!

  • Linux 中最罕用的编辑器是什么? vim ! 
  • vi 跟 vim 啥区别? vim 就是 vi 的增强版,性能更强些,别纠结这个细节,把握 vim 就好😺。
  • 有几种模式?有四种模式,normal 模式(默认模式)、编辑模式、命令模式、visual 模式(这个模式不罕用,上面不细说)。

02 normal 模式 & 编辑模式 & 底线命令模式

normal 模式

vim [文件名] # 即进入 normal 模式,这就是默认的 normal 模式,在进入其余模式后,能够应用 Esc 键返回到这个模式。

编辑模式

normal 模式下按下 i、a、o、s,进入编辑模式,应用频度个别也是这个程序,编辑模式下和在 Windows 里记事本里操作没啥区别。

  • i # insert,光标以后字符前插入
  • a #append, 光标以后字符后插入
  • o #下一行插入
  • s #不罕用,删除以后字符并插入

底线命令模式

在编辑模式下对文件批改操作后,按 Esc 进入 normal 模式,normal 模式下应用冒号(:)进入底线命令模式。
底线命令模式常用命令字符如下:

  • :q # 退出不保留
  • :q! # 强制退出不保留
  • :wq # 退出保留
  • :wq! # 强制退出保留

03 normal 模式下的挪动、复制粘贴、撤销与查找

挪动

  • ctrl + f # 向下翻页
  • ctrl + b # 向上翻页
  • 0 # 行首
  • $ # 行尾
  • space # 空格键,始终向下挪动一个字符。跟左方向键(→)的区别是,左方向键(→)只能在本行挪动。h、j、k、l 相似方向键的右下上左,顺时针,这些操作是体现 vim 牛的中央,能够飞快的跳转操作。
  • G # 大写 g,挪动到文末。
  • nG # n 是数字,代表行号。100G 则是挪动到第 100 行。1G 文首,0G 文末。
  • gg # 挪动到文首。同样成果还有 1G。

删除

  • dd # 删除以后行,可间断按 d 删除。
  • ndd # 删除以后行及之后的多少行,如: 100dd,删除以后及之后的 100 行
  • dG #删除以后行至开端的所有行(光标放到首行,则能够删除全副)
  • 删除列操作
    1. 光标定位到要操作的中央。
    2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
    3.d 删除。

撤销

u # 撤销操作。这应该是十分罕用的操作了。如果下面应用 dd 删除错了,可按一下 u 进行撤销。编辑模式下撤销须要按 Esc 进入 normal 模式,再按 u 撤销。

复制粘贴

  • y # 进入复制模式。
  • yy # 复制以后行。
  • nyy # n 是数字,代表行号。如: 16yy,即复制以后行至 16 行的内容。
  • p # 粘贴以后 vim 剪切板中内容。
  • yyp # 罕用组合键,即在下面应用 yy 复制后,可立刻应用 p 粘贴,或者挪动到指定地点后按个 p,即把方才的内容粘贴过去了。
  • ggyG # 全选复制。看这个命令,到行首,按 y 进入复制模式,再挪动光标到文末,而后能够按 p 粘贴了。这里有个缺点,这样的复制内容只能在 vim 中进行粘贴,一旦退出 vim,剪切板中则无此内容了。那怎么办呢?看上面这个命令。
  • gg”*yG、gg”+yG # 这两个全选复制的命令,能够将内容带出到 vim 之外。

查找

normal 模式下输出 / 或 ?。

  • /hello # 即向下寻找 hello 这个字符串。按 n 会始终向下找。
  • ?hello # 即向上寻找 hello 这个字符串。按 n 会始终向上找。
  • n、N # 配合 /、? 则会很乏味,如: /hello Enter 后再按 n,始终向下找;N 始终向上找;?hello Enter 后再按 n,始终向上找,N 始终向下找。

04 底线命令模式的查找替换

替换,则是要进入底线命令模式了,下面说过了,即在 normal 模式下应用冒号 : 进入此模式。

  • :%s/old/new/g # 全局替换,将 old 字符替换成 new。
  • :[n1],[n2]s/old/new/g # n1、n2 为行号,意思是从第 n1 行到 n2 行,指定行数区间替换。
  • :[n1],%s/old/new/g # 从第 n1 行到最初一行的替换。

本文由博客一文多发平台 OpenWrite 公布!

退出移动版