Linux 基本操作 vim 篇
vim 简介
vim 是 Linux 上最基本的文本编辑工具,其地位像是 Windows 自带的记事本工具,还要少数的 Linux 系统自带 leafpad 编辑器,leafpad 的操作界面更像是 Win 的记事本,可以使用鼠标切换光标,自由删除,并且点击左上角的文件可以进行保存;但是 vim 编辑器却像是一个简单的指令工具,其操作必须依靠指令来完成,但是如果不会使用 vim 的话,是无法完成很多操作的,甚至对大多数只集成了 vim 的系统来说,不会使用 vim ,甚至无法安装 leafpad ,而在 Linux 系统中,刚装完的系统(国产系统除外)一定要进行换源,这时候就要使用到一个编辑器工具,如果你的系统只有 vim,最好还是学习一下如何使用 vim;
vim 三种模式
- 只读模式:使用 vim 打开文件为 只读模式,此时只可以查看文件内容,无法对文件进行编辑;
- 插入模式:即 编辑模式 ,此时可以对文件进行编辑,字符的插入或删除等操作;
- 底行模式:类似于终端的命令行,此时可以输入命令,选择是保存文件 / 保存并退出 / 不保存退出 / 强制退出 等;
vim 基本命令
基本的编辑命令,学会后可以流畅操作 vim 编辑器;
-
在进入 vim 之前,建议使用:sudo su 命令进入超级管理员模式,否则一些系统级的文件即使你编辑了,也无法进行保存;
-
打开文件:打开控制终端,输入 vim + 一个文本的名字,就可以打开这个文本(打开当前目录下的文件只需要输入文件名,打开其他目录下的文件需要输入绝对地址);这个时候是“只读”模式,无法对文件进行编辑;
-
编辑命令:进入文件之后,点击
i
(insert 缩写),进入编辑模式,这个时候可以自使用上下左右四个键控制光标,使用删除键删除,或输入任意字符; -
底行模式:对文件编辑好之后,点一下
Esc
键,进入底行模式,此时可以输入命令选择对文件的操作,基本命令如下(注:以冒号开头):
指令 | 效果 | 备注 |
---|---|---|
:wq | 保存 并 退出 | 保存文件并退出文件,返回到命令终端界面; |
:q | 退出 | 不保存,直接退出文件,返回到命令终端界面; |
:q! | 强制退出 | 提示无法保存的时候,加!可以强制退出文件,此时的文件缓存在内存中,并不会存回磁盘中; |
:wq! | 强制保存并退出 | 此时文件会被强制保存,并退出回到命令终端; |
vim 进阶命令
进阶指令,学会后操作更方便,相当于魔法加成;
- 光标控制
指令 | 效果 | 备注 |
---|---|---|
:num | 让光标跳到第 Xnum行首 | 只会跳到行首 |
:nd | 删除第 n 行 | d:delete |
:n , md | 从第 n 行删到第 m 行 | m 不能超过最后一行,否则提示无效 |
- 快速复制粘贴
指令 | 效果 | 备注 |
---|---|---|
:n,my | 复制第 n 行到 m 行的内容 | 按 p 粘贴(Paste) |
:n,md | 剪切第 n 行到 m 行的内容 | 按 p 粘贴(Paste) |
- 文本编辑(效果类似于各类编辑器的“编辑”功能)
指令 | 效果 | 备注 |
---|---|---|
:%s#old#new#g | 全局替换 | g:全局 ;#不是代替空格用的,不可以删除; |
:num s#old#new#g | 在第 num 行查找old并将其替换成new | 相对于上一条命令,加了一个范围:某一行; |
:n , m s#old#new#g | 在第 n 到 m 行查找old并将其替换成new | 相对于上一条命令,扩大了范围,多行;- |
- 文件操作
指令 | 效果 | 备注 |
---|---|---|
vsp xxx.c | 左右分屏打开 xxx.c 文件 | 分屏应该很常见了,可以理解吧 |
sp xxx.c | 上下分屏打开 xxx.c 文件 | |
:w new xxx.c | 将当前文件另存为 xxx.c 文件 | 可以使用绝对地址 |
:n ,mw new xxx.c | 将当前文件的第 n 到 m 行另存为 xxx.c 文件 | 使用时候注意不要少了 w |
:0r /etc/hosts | 将/etc/hosts文件中的内容导入到此文件的开头 | |
:$r /etc/hosts | 将/etc/hosts文件中的内容导入到此文件的结尾 |
- 搜索内容
指令 | 效果 | 备注 |
---|---|---|
/word | 在文件中搜索word 这个单词 |
|
n | 向下查找(下一个) | |
N | 向上查找(上一个) | |
/word\c | 忽略大小写,在文件中搜索word 这个单词 |
|
:noh | 取消高亮 | 退出“查找模式” |
注意事项
- vim 可以打开任意模式文件,不一定非得是
.c
文件 - 打开 / 另存为 的时候 最好加上绝对地址
- $ 符号一般指最后( 行 / 字母 )