Linux操作系统基础操作之vi文字处理器

直接进入编辑环境
$ vi
进入编辑环境并打开(新建)文件
$ vi myfile
退出vi编辑环境

输入末行命令并保存对文件的修改,并退出编辑器

:wq
输入末行命令放弃对文件的修改,并退出编辑器
:q!

进入编辑模式

insert键

退出编辑模式

Esc键

打开新文件
打开新的文件到vi编辑器中
:e filename
打开新的文件到vi编辑器中,并放弃对当前文件的修改
:e! filename
读取文件内容到当前vi编辑器中
:r filename

保存文件
保存对vi编辑器中已打开文件的修改
:w
另存为文件
将vi编辑器中的内容另存为指定文件名
:w myfile

保存并退出
对vi编辑器中的文件进行保存并退出vi编辑器
:wq

不保存退出
放弃对文件内容的修改,并退出vi编辑器
:q!

光标移动(未进入insert,非编辑模式下)

n<空格>: 向右移动n个字符
0:移动到行首
$:移动到行尾
G:移动到文末
nG:移动到文件的第n行
gg:移到文件第一行
n<回车>:向下移动n行

查找替换(非编辑模式下)

/word: 在当前光标后查找含word的字符串
?word:从光标开始向前查找含word的字符串
:n1,n2s/word1/word2/g:将n1行到n2行之间的word1替换为word2
:1,$s/word1/word2/g:将全文中的word1替换为word2
:1,$s/word1/word2/gc:与上个命令相同,但需要用户确认替换

删除、复制、粘贴(非编辑模式下)

x/X:向后/前删除一个字符
dd:删除整行
ndd:删除从当前列向下的n行
yy:复制当前行
nyy:复制从当前向下的n行
p/P:将复制来的数据粘贴在光标的下/上一行

撤销操作(非编辑模式下)

编辑模式下操作

i/I:在光标出插入(insert)/从当前所在行的第一个非空格符处开始插入
a/A:从光标的下一个字符插入/从光标所在行的最后一个字符插入
o/O:从光标所在行的下/上插入一行
r/R:替换,区别在于r仅替换一个字符,R一直替换到按下Esc才停止
Esc:退出,回到一般模式

:w:将修改写入文件
:q:退出vi
:wq:保存后退出
:wq!:强制保存后退出
:set nu:显示行号
:set nonu:取消行号

多文件处理

一个文件到另一个文件(不在一个编辑框中)

vim 文件名1 文件名2 ……
:n表示查看或编辑下一个文件
:N表示查看或编辑上一个文件
:files显示当前打开的所有文件的编号

在同一个编辑框中

一个终端上同时显示两个文件或同时显示一个文件的不同段落
:sp [filename]
ctrl+w, j/k表示下/上移一个窗口
ctrl+w, q表示退出

 

posted @ 2019-01-08 16:14  DannyBoy~  阅读(353)  评论(0编辑  收藏  举报