Linux基础(3) vim

it2026-02-26  10

vi/vim编辑器

什么是vi/vim

可以理解为windows下面的文本编辑器,比如记事本、word文档 vi 编辑器通常称为vi,而vi又是visual editor的简称。 他在Linux 的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等 众多文本操作,而且用户可以根据自己需要对其进行定制,这是其它编辑程序所没有的。 vi 编辑器并不是一个排版程序,它不像word或wps那样可以对字体 格式、段落等其它属性进行编排,它只是一个文本编辑程序。 没有菜单,只有命令,且命令繁多

为何要用vim

修改配置 写脚本

vi和vim的区别

vi不显示高亮颜色语法 vim显示高亮颜色语法 其它功能没什么区别 所以在Linux系统下,使用vi还是vim取决个人习惯 默认vi是安装的,vim安装需要通过 yum install vim -y

vi/vim的操作模式

1. 命令行模式 在打开文件时首先进入的就是命令行模式。在这一模式中所有输入的被解释成vi/vim命令 可以执行修改、复制、删除、粘贴等命令,也可以进行移动光标、搜索字符串和退出vi的操作 光标的移动: 输入$ 光标移动到当前行的末尾 输入0 光标移动到当前行的开始 快速移动光标所在文件中的位置命令 G 光标移动到这个文件的最后一行 5G 光标移动到第5行 gg 光标移动到第一行(相当于1G) H 光标移动到当前屏幕显示的 最上方那一行的第一个字符 M 光标移动到当前屏幕显示的 最中间那一行的第一个字符 L 光标移动到当前屏幕显示的 最下方那一行的第一个字符 命令行的删除与复制操作 dd 删除当前光标所在行的内容 5dd 删除光标向下5行内容 yy 复制当前光标所在行的内容 6yy 复制光标所在向下6行内容 粘贴命令 p 将已复制的内容在光标下一行粘贴 P 将已复制的内容在光标上一行粘贴 复原和重做命令 u 还原上一次操作 2. 编辑/插入模式:输入a、i、o之一 在编辑模式中,可以往一个文件写入内容,使用esc可以返回命令行模式 a:进入插入模式并在光标之后进行添加; i:进入插入模式并在光标之前进行插入内容; o:进入输入模式并在(光标当前)开启下一行输入 O(大写o):进入输入模式并在光标当前一行进行进行下挪 3. 末尾模式:输入Esc+: 进入 末行模式可以进行文件内容的保存,查找,替换等操作 文件的保存: :10 进入第10行 :w 保存 :q 退出 :q! 不保存退出 :wq 保存文件并退出 :wq! 强制保存文件退出 :x 保存退出 替换内容 :%(代表全部) s/aaa/AAA 将每行第一个找到的aaa替换成AAA :% s/aaa/AAA/g 将每一行所有aaa替换成AAA :2,5 /aaa/aaa/AAA/g 将2-5行aaa替换成AAA :3,$(最后一行) /aaa/AAA/g 将2-最后一行aaa替换成AAA :,8 s/aaa/AAA 从当前行到第八行 :% s/a/D/gi 将所有a包括大写a 替换成D :% s/^abc$/123/g 将所有a开头c结尾的内容替换成123 读入\写入文件 :w /aa.txt 另存为/aa.txt :1,3 w/2.txt 1-3行内容 另存为/2.txt :r /etc/hosts 读取文件内容 设置环境 临时设置 末尾模式输入: :set nu 设置行号 :set ic 不区分大小写 :set ai 自动缩进 :nonu 取消设置行号 永久的环境: /etc/vimrc 影响所有系统用户 ~./vimrc 影响某一个用户

同时编辑多个文件

^ = ctrl vim -o /a.txt /b.txt 水平分割 ^w 按两次切换 vim -O /a.txt /b.txt 垂直分割 vim -p /a.txt /b.txt 使用^PgUp , ^PgDn切换

文件内容对比

diff 文件对比 vimdiff 以vim的方式打开两个文件对比,高亮显示不同的内容 patch 实验 touch a.txt b.txt [root@localhost ~] echo 111 > a.txt # 重写文件内容 [root@localhost ~] echo 222 > b.txt [root@localhost ~] diff -u a.txt b.txt > patch.diff # 将a内容与b内容 对比 以后面文件为主要 打出内容不同处的补丁存入patch文件 [root@localhost ~] patch a.txt patch.diff # 相当于a内容与b内容相同了 patching file a.txt [root@localhost ~] cat a.txt 222

vi/vim的执行过程

1. vi打开文件 a.txt 2. 进入编辑模式 编辑文件 3. 编辑文件的时候 vi会自动创建一个交换文件 > .a.txt.swp 如果文件编辑时候意外退出,再次打开文件时交换文件就会出现,询问是否恢复上次编辑的数据 4. 编辑完成,vi会自动删除临时文件 5. 保存退出 修改成功
最新回复(0)