五、vi编辑器

1.Linux中的文本编辑器

vi 基础版 缺点:易使用性差,不能对字体、段落进行排版

vim 增强版 有点:效率高,语法高亮功能,对C语言的自动缩进等。

2.vi/vim编辑器的功能以及调用的方法(重点)

功能:编辑、合并、光标的移动、替换、复制、粘贴、搜索等

调用方法

vi / vim 文件名

①文件存在,打开直接编辑

②文件不存在,第一次存盘时创建保存

查看版本 vi --version

<u>注:help version 是所有命令都有的选项</u>

3.vi/vim编辑器三种常用工作模式(重点)

(1)命令模式(普通模式、一般模式)

★默认工作模式

辨别:在左下角有文件名和大小的提示,或者无任何提示。

*功能:光标的移动、复制、粘贴、删除、合并 、撤销与恢复

<!--在命令模式下输入的命令 不回显-->

(2)编辑模式

辨别:左下角有”——插入——”或者insert

功能:输入文字

(3)命令行模式(末行模式)

辨别:左下角有冒号” :“模式

功能:保存和退出、复制、移动、删除、查找、替换、设置行号和取消行号

4.vi/vim编辑器常用的命令(重点、难点)

1.命令模式下的操作:

(命令模式下输入的命令不回显)

(1)光标的移动

​ 左 下 上 右 移动: h j k l 和 方向键

①按页移动

​ 向下移动一屏 :Ctrl+f forward

​ 向上移动一屏 :Ctrl +b backward

​ 向下移动半屏:Ctrl+d downward

​ 向上移动半屏:Ctrl+u upward

②屏幕内移动

移动到屏幕的第一行: H home

移动到屏幕的中间一行: M middle

移动到屏幕的最后一行: L Last

③文件内移动

移动到第n行 nG

往下移动n行 n回车

移动到最后行 G

移动到第一行 1G或者gg

④行内移动

往后移动n个字符 n空格

移动到行首 ^或0

移动到行末 $

(2)删除

按字符删除

​ x 往后删除一个字符

​ X 往前删除已给字符

​ nx 往后删除n个字符

​ nX 往前删除n个字符

按行删除

dd 删除光标所在行内容

ndd 从光标所在行开始,往后删除n行

dnG 从光标所在行开始,删除到第n行

dG 从光标所在行开始,删除到最后一行

d^或者d0 从光标所在行开始,删除到行首

d$ 从光标所在行开始,删除到该行行末

eg:

从光标所在行开始,删除到第1行

​ d1G 或者 dgg

(3)复制

yy 复制光标所在行内容

nyy 从光标所在行开始,往后复制n行

ynG 从光标所在行开始,复制到第n行

yG 从光标所在行开始,复制到最后一行

y1G或者 ygg 从光标所在行开始,复制到第一行

y^或者y0 从光标所在行开始,复制到行首

y$ 从光标所在行开始,复制到行末

(4)粘贴

p 粘贴到光标后面 (如果粘贴的是行,就粘贴到光标的下一行)

P 粘贴到光标前面 (如果粘贴的是行,就粘贴到光标的上一行)

(5)合并

​ J 将光标所在行内容与下一行的内容合并

(6)撤销和恢复

​ u 撤销最近一次的操作,可以连续撤销

​ Ctrl+r 恢复u的撤销

​ U 撤销当前行的所有操作<!--按一次撤销,按两次恢复-->

2.编辑模式(按a,i,o)

进入编辑模式:

​ i 进入编辑模式后,在光标所在出插入字符

​ I 进入编辑模式后,在光标所在行行首插入字符

​ a 进入编辑模式后,在光标下一个位置插入字符

​ A 进入编辑模式后,在光标所在行行末插入字符

​ o 进入编辑模式后,在光标所在行下放插入一个空白行

​ O 进入编辑模式后,在光标所在行下放插入一个空白行

<!--按esc键退出编辑模式,回到命令模式-->

3.命令行模式下的操作(按:进入命令行模式)

(命令模式下输入的命令会回显)

(1)保存(w)、退出(q)、另存

​ :w 保存 (对可写文件保存)

​ :w! 强制保存 (对制度文件保存)

​ :q 退出 (保存之后退出)

​ :q! 强制退出 (修改后不保存退出)

​ :wq 保存并退出 (对可写文件保存并退出)

​ :wq! 强制保存并退出 (对只读文件保存并退出)

​ : w 另存文件名 文件的另存 (文件保存在当前目录下)

​ :r 文件名 该指定文件中的内容读取过来放到光标所在行后

(2)复制粘贴(co)

​ :n1,n2 co n3 把n1到n2行的内容复制到n3

​ : n1 co n2 把n1的内容复制到n2行

eg:

:5,8 co 10 把5-8的内容复制到第10行

:5 co 10 把5行的内容复制到第10行

(3)移动(m)

​ :n1,n2 m n3 把n1到n2行的内容移动到n3

​ : n1 m n2 把n1的内容移动到n2行

(4)删除(d)

​ :n1,n2 d 把n1到n2行的内容删除

​ : n1 d 删除n1行内容

(5)查找

(6)替换

(7)设置行号、取消行号

(8)查看帮助信息

: help 或者 F1键 调查vi/vim帮助文档

:help 命令 查看某个命令的帮助

:q 或者 ZZ 键 退出帮助

5.窗口的分割(不考)

Last modification:November 16, 2021
如果觉得我的文章对你有用,请随意赞赏