vim 命令大全 一般模式 编辑模式 命令模式

推荐阅读:vim入门教程

https://www.cnblogs.com/hezhiyao/p/7624831.html

 

第一部分:一般模式可用的按钮说明,光标移动、复制粘贴、查找替换

 

移动光标的方法:

h 或者左箭头←光标向左移动一个字符

j 或者下箭头↓       光标向下移动一个字符

k 或者上箭头↑       光标向上移动一个字符

l 或者右箭头→       光标向右移动一个字符

如果想要进行多次移动的话,例如向下移动30行,可以使用“30j” 或 “30↓” 的组合键,即加上想要进行的次数后,按下操作即可

 

Ctrl +f            屏幕向下移动一页,相当于 Page Down 按键

Ctrl +b            屏幕向上移动一页,相当于 Page Up 按键

Ctrl +d            屏幕向下移动半页

Ctrl +u            屏幕向上移动半页

+                 光标移动到非空格符的下一行

-                 光标移动到非空格符的上一行

n<space>          那个n表示数字,例如20。按下数字后在按空格键,光标会向右移动

                 这一行的n个字符。例如20<space>,光标会向后面移动20个字符距离。

0或功能键[Home]  这是数字“0”:移动到这一行的最前面字符处

$或功能键[End]    移动到这一行的最后面字符处

H                光标移动到这个屏幕的最上方那一行的第一个字符

M                光标移动到这个屏幕中央那一行的第一个字符

L                光标移动到这个屏幕的最下方那一行的第一个字符

G                移动到这个文件的最后一行

nG               n为数字,移动到这个文件的第n行,例如20G会移动到这个文件的第

                 20行(可配合:set nu)

gg               移动到这个文件的第一行,相当于1G

N[Enter]          n为数字,光标向下移动n行

 

查找与替换

/word             向下查找一个名称为word的字符串,例如要在文件内查找vbird这个字

                 符串,就输入/vbird即可

?word            向上查找一个名称为word的字符串

n                这个n是英文按键,代表重复前一个查找的操作,例如,如果我执行/vbird 

                 去向下查找vbird这个字符串,则按下n后,会向下继续查找下一个名

                 称为vbird的字符串,如果执行?vbird的话,那么按下n则会向上继续查

                 找名称为vbird的字符串

N                这个N是英文按键,与n刚好相反,为“反向”进行前一个查找操作,

                 例如输入/vbird后,按下N则表示向上查找vbird

使用/wod配置n或者N是非常有帮助的,可以重复查找一些关键字

:n1,n2s/word1/word2/g    n1与n2为数字,在第n1与n2行之间寻找word1这个字符串,

                       并将word1字符串替换为word2,例如,在100到200行之间查

                      找vbird并替换为VBIRD则用:100,200s/vbird/VBIRD/g

 

:1,$s/word1/word2/g      从第一行到最后一行查找word1字符串,并将该字符串替换为

                       word2

:1,$s/word1/word2/gc     从第一行到最后一行差早word1字符串,并将该字符串替换为

                       word2,且在替换前显示提示字符串给用户确认是否需要替换

 

删除、复制、粘贴

x,X        在一行字当中,x为向后删除一个字符,相当于[Del]键,X为向前删除一个字

           符,相当于[Backspace]键

nx        n为数字,连续向后删除n个字符,例如我要连续删除10个字符,“10x”

dd        删除光标所在的那一整行

ndd       n为数字,删除光标所在的向下n行,例如20dd则是删除20行

d1G       删除光标所在到第一行的所有数据

dG        删除从光标所在到最后一行的所有数据

d$         删除从光标所在处到该行的最后一个字符

d0        那个是数字的0,删除从光标所在处到该行的最前面一个字符

yy        复制光标所在的那一行

nyy       n为数字,复制光标所在的向下n行,例如20yy则是复制20行

y1G       复制光标所在行到第一行的的说有数据

yG       复制光标所在行到最后一行的数据

y0        复制光标所在的那个字符到该行行首的所有数据

y$        复制光标所在的那个字符到该行行尾的所有数据

p,P       p为将已复制的数据在光标的下一行粘贴,P为粘贴的光标的上一行,例如:我

         目前光标在20行,且已复制了10行数据,则按下p后,那10行数据会粘贴在原

        本的20行之后,即由21行开始粘贴,如果按下P,原本的第20行会变成第30行

J         将光标所在行与下一行的数据结合成同一行

c        重复删除多个数据,例如向下删除10行,[10cj]

u        复原前一个操作

Ctrl+r     重复上一个操作

。       就是小数点,重复前一个操作的意思,如果你要重复删除、复制、粘贴等操作,

         按下小数点。就可以

 

第二部分:一般模式切换到编辑模式的可用按键说明

进入插入或替换的编辑模式

i,I      进入插入模式,i为从目前光标所在处插入,I为在目前所在行的第一个非空格字符

        处开始插入

a,A     进入插入模式,a为从目前光标所在的下一个字符开始插入,A为从光标所在行的

        最后一个字符处开始插入

o,O    进入插入模式,o为在目前光标所在行的下一行插入新的一行,O为在目前光标所

        在处的上一行插入新的一行

r,R      进入替换模式,r只会替换光标所在的那一个字符一次,R会一直替换光标所在的

        文字,知道按下[Esc] 键为止

[Esc]    退出编辑模式,回到一般模式中

 

第三部分:一般模式切换到命令模式可用的按键说明

命令行的保存、离开命令

:w        将编辑的数据写入硬盘文件中

:w!        若文件属性为只读,强制写入该文件,不过,能不能写入,还跟你对该文件的

           文件权限有关

:q         离开vi

:q!         若曾修改过文件,又不想存储,使用 !为强制离开不保存

:wq        回车后离开,若为 “:wq!”则为强制保存后离开

ZZ        若文件没有改动,则不保存离开,若文件已经被更改过,则保存后离开

:w[filename]  将编辑的数据保存成另一个文件,类似于另存文件

:r[filename]   在编辑的数据中,读入另一个文件的数据,即将“filename”这个文件的内容

             加到光标所在行的后面

:n1,n2w[filename]   将n1到n2的内容保存成filename这个文件

:!commond         暂时离开vi到命令行模式执行commond的显示结果,例如:

               “:! ls /home”即可在vi中查看/home下面以ls输出的文件信息

Vim 环境的更改

:set nu       显示行号,设置之后,在每一行的前缀显示该行的行号

:set nonu     与set nu相反,为取消显示行号

 

块选择的按键意义

V         字符选择,会将光标经过的地方反白选择

V         行选择,会将光标经过的行反白选择

Ctrl+v     块选择,可以用长方形的方式选择数据

y         将反白的地方复制起来

d         将反白的地方删除

 

多文件编辑的按键

:n        编辑下一个文件

:N       编辑上一个文件

:files     列出目前这个vim打开的所有文件

 

多窗口情况下的按键功能

:sp [filename]     打开一个新窗口,如果有加filename,表示在新窗口打开一个新文件,否

则表示两个窗口为同一个文件内容(同步显示)

Ctrl+w  +j

Ctrl+w  +↓     按键的按法是:先按下ctrl 不放,再按下w后放开所有的按键,然后在

按下j(或下箭头键),则光标可以移动到下方的窗口

Ctrl+w  +k

Ctrl+w  +↑     同上,不过光标移动到上方的窗口

Ctrl+w  +q      其实就是 :q 结束离开,举例来说,如果我想要结束下方的窗口,那么利用ctrl+w+↓移动到下方窗口后,按下 :q即可离开,也可以按下 ctrl+w+q

 

Vim环境设置参数

:set nu                   就是设置行号

:set nonu                 取消行号

:set hlsearch

:set nohlsearch               hlsearch就是high light search,这个就是设置是否将查找的字

                           符串反白的设置值,默认值是hlsearch

:set autoindent

:set noautoindent             表示是否自动缩排,autoindent就是自动缩排

:set backup                  表示是否自动保存备份文件,一般是nobackup 的,如果设

                          置backup的话,那么当你改动任何一个文件时,则源文件被

                          另存为一个文件名为filename~的文件,举例来说,我们编辑                 

                          hosts,设置:set backup,那么当改动hosts时,在同目录下,

                          就会产生hosts~文件名的文件,记录原始的hosts文件内容

:set ruler                  右下角的一些状态栏说明,这个ruler就是来显示或者不显示

                          该设置值的

:set showmode              这个则是是否要显示 --INSERT--之类的字眼在左下角的状态

                          栏

:set backspace=(012)         一般来说,如果我们按下i进入编辑模式后,可以用退格键

                          backspace来删除任意字符的,但是某些distribution则不许如    

                          此,此时,我们可以通过 backspace来设置,当backspace为                 

                          2时,可以删除任意值,为0或1时,仅可删除刚才输入 的

                          字符,而无法删除原本已经存在的文字

 

:set all                    显示目前所有的环境参数设置值

:set                       显示与系统默认值不容的设置参数,一般来说就是你有自行变

                         动过的设置参数

:syntax on

:syntax off                表示是否依据程序相关语法显示不同颜色,举例来说,在编辑

                      一个纯文件的时候,如果开头是以#号开始,那么该行就变成蓝色,

:set bg=dark              

:set bg=light             可以用以显示不同的颜色色调,默认是light,如果你发现批注的

                       字体深蓝色是在很不容易看,可以设置dark,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值