用好vi文本编辑器

Posted WY_记录

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用好vi文本编辑器相关的知识,希望对你有一定的参考价值。

1.安装 VIM:[[email protected] ~]# yum install vim

2.运行 vim

[[email protected] ~]# vim [文件名]
这是个新的文件,所以你会看到一个空白的窗口。如果这个文件已经存在,那么
vim 将会打开这个文件

3.模式

Vim 是一个模式编辑器,vim 有三种模式:

一般模式(NORMAL):会在屏幕的底部显示文件名或者是空白;在打开 vim 时默认处于一般模式。

输入模式:底部会显示 –INSERT–,按下 i 键进入输入模式,默认情况下,vim 里面的文字不会自动换行

可视模式:底部显示的是–VISUAL–, Ctrl+v进入可视模式

无论编辑器当前在什么模式,按下 Esc 键,它都会回到一般模式。有时需要按两次<Esc>

4. 帮助

在最后,还有一个重要的命令要提到——帮助命令。要获取帮助,输入“:help”或者按下 F1 键

要完整地获取某个主题的帮助,使用下面的命令“:help 主题”。例如,要获取 x 命令的帮助就需要键入“:help x”

帮助文档中有些文字是被竖线封闭的(例如|usr_01.txt|)。它表示的是这个文字是一个链接,将鼠标放在两个竖线的中间然后按下 CTRL+](跳到该标签),可以进入相应的主题 3 。CTRL+T(弹出标签)将你带回到之前的屏幕

5.设置环境参数(行号)

命令行模式下,设置环境参数:输入set [环境参数名字],取消:set no [环境参数名字]

设置行号“:set nu”,取消行号“:set nonu”

:set all查看所有环境参数:set hlsearch

hlsearch   是否将搜寻的字符串反白。 
autoindent    就是自动缩排
backup 是否自动储存备份档,一般是 nobackup 的, 如果设定backup 的话,那么当你更动任何一个档案时,则源文件会被另存成一个档名为 filename~ 的档案。
ruler 右下角是否显示状态列说明
showmode 是否要显示 --INSERT-- 之类的字眼在左下角的状态列。
syntax (off|on) 是否依据程序相关语法显示不同颜色

6.移动

在一般模式中,可以使用 h(左)、j(下)、k(上)和 l(右)在 vim 里移动,也可以通过方向键来移动

[Ctrl] + [f]  屏幕『向下』移动一页,相当于 [Page Down]按键(常用)
[Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键(常用)
0              光标移动到这一行的最前面字符处 (常用)
$              光标移动到这一行的最后面字符处(常用)
H              光标移动到这个屏幕的最上方那一行
M             光标移动到这个屏幕的中央那一行
L              光标移动到这个屏幕的最下方那一行
G             光标移动到这个文件的最后一行(常用)
gg            光标移动到这个文件的第一行 (常用)
<Enter>   光标向下移动 1 行(常用)
其中 h、j、k、l、$、<Enter>、G、w、b 均可以与数字组成组合键,如
“30j”表示向下移动 30 行,30G 表示移动到本文件的第 30 行。

7. 查找替换

/word          从光标所在往下查找一个名为 “word” 的字符串。(常用)
?word         向光标所在往上查找一个名为 “word” 的字符串。
n                 表示重复前一次查找。
N                表示“反向”执行前一次查找
:n1,n2s/word1/word2/g         n1 与 n2 为数字。在第 n1 与 n2 行之间查找word1 这个字符串,并用 word2 来替代(常用)
:1,$s/word1/word2/g            在整个文件中查找 word1 这个字符串,并用word2 来替代(常用)
:1,$s/word1/word2/gc          在整个文件中查找 word1 这个字符串,并用word2 来替代,且在取代前显示提示字符给使用者确认 (conform) 是否需要取代!(常用)

8.复制粘贴

yy      复制游标所在的那一行(常用)
nyy    n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制20 列(常用)
p, P   p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行(常用)

9.删除
x, X    在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
nx      n 为数字,连续向后删除 n 个字符
dd      删除游标所在的那一整列(常用)
ndd   n 为数字。删除光标所在的向下 n 列

将光标移到行任意一处,按下“Shift+j”也即“J”来删除当前行的换行符

10.撤销和重复
u             撤销前一个动作。(常用)
[Ctrl]+r   重做上一个动作。(常用)
:e!          将文件还原到最原始的状态

11.打开、保存和退出

:w                  将编辑的数据写入硬盘档案中(常用)
:w!                 若档案属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟您对该档案的档案权限有关啊!
:q                   离开 vi (常用)
:q!                  若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
:wq                储存后离开,若为 :wq! 则为强制储存后离开 (常用)
ZZ                 若文件没有更动,则不储存离开,若文件已经经过更动,则储存后离开
:w [filename] 将编辑的数据储存成另一个文件(类似另存新文件)

:r [filename]  在编辑的数据中,读入另一个文件的数据。亦即将『filename』 这个档案内容加到游标所在行后面

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

ZZ”也即“Shift+z+z”命令来退出 vim,如果文件作过改动“ZZ”命令就保存文件并退出 vim,如果文件没有作过改动“ZZ”命令就直接退出 vim

12.同时编辑件多个文件

vim 后面同时可以接多个文件名,“:n”和“:N”在这两个文件间切换

输入“:sp 文件名”命令即可在不关闭当前文件的情况下打开新文件,用“[ctrl]+wj”和“[ctrl]+wk”,在这两个文件间切换,按键的按法是:先按下 [ctrl] 不放, 再按下 w 后放开所有
的按键,然后再按下 j ,则光标可移动到下方的窗口

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

13.可视模式

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

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

[Ctrl]+v         区块选择,可以用长方形的方式选择文本

y                   将反白的地方复制起来

d                  将反白的地方删除掉

14.暂时存档文件和恢复

当编辑一个文件时,在这个文件所处的目录底下就会有一个临时文件,文件名为“编辑的文件名.swp”这是一个隐藏文件, 所有修改都会暂时存在这个文件

系统或者 vi 非正常关闭了,那么再重新用 vi 打开这个文件时时,系统就会询问要回复『Recovery』。按下 (R) ,就可以将数据回复到修改过程的样子,再将 swp 文件删除

15.更多

vim官方文档:http://www.vim.org/docs.php

 

 






 

以上是关于用好vi文本编辑器的主要内容,如果未能解决你的问题,请参考以下文章

linux命令-文本编辑器命令vi

VIM的使用

Liunx系统——VI文本编辑器之初见

(值得收藏!)Vi 文本编辑器精讲

vi文本编辑器有哪三大工作模式,时如何进行转化的?

Vi文本编辑器