【Linux】vim 编辑器

Linux 系统自带了 gedit 和 vi 编辑器,gedit 是图形化界面的操作,而 vi 由比较难用,所以建议安装 vim 编辑器,vim 是从 vi 发展出来的一个文本编辑器,相当于增强版的 vi ,其代码补完、编译及错误跳转等功能特别丰富,vim 完全继承 vi 的原有操作;vi 仅支持单次撤回,vim 支持多次撤回;vim 用于丰富的插件系统;vim 支持更多操作系统平台比如 Windows 。

vim 编辑器的安装

c 复制代码
sudo apt-get install vim


vim 编辑器的三种模式(一般模式、编辑模式、命令行模式)
一般模式(指令模式):用 vi 打开一个文件后就是此模式,一般模式下无法编辑文件;

c 复制代码
vi xxx            //打开 xxx
如果 xxx 文件已存在,则直接打开 xxx
如果 xxx 文件不存在,则 vim 编辑器会创建一个 xxx 新文件


c 复制代码
键盘的上下左右移动光标
yy	          复制当前光标所在行
[n]yy	      n 为数字,复制当前光标开始的 n 行;
p	          粘贴复制的内容到光标所在行之下;
P	          粘贴复制的内容到光标所在行之上;
dd	          删除当前光标所在行;
[n]dd	      n 为数字,删除当前光标所在行开始的 n 行;
cc	          剪切当前光标所在行;
[n]cc	      n 为数字,剪切当前光标开始的 n 行;
G	          光标移动到文件尾;
u	          取消前一个动作;
.	          重复前一个动作;
x	          删除光标所在的一个字符;
X             删除光标所在的前一个字符;
ZZ	          保存并退出;

编辑模式 :在一般模式下按下" i、I、a、A、o、O、s、r "等就会进入到编辑模式,一般按下 a 进入编辑模式;按 ESC 可以退出编辑模式;

c 复制代码
i             在当前光标所在字符的前面,转为输入模式;
I             在当前光标所在行的行首转换为输入模式;
a             在当前光标所在字符的后面,转为输入模式;
A             在光标所在行的行尾,转换为输入模式;
o             在当前光标所在行的下方,新建一行,并转为输入模式;
O             在当前光标所在行的上方,新建一行,并转为输入模式;
s             删除光标所在字符;
r             替换光标处字符;

比如按下 a ,文件的左下角就会出现插入字样的提示,即代表可以编辑文件了;

命令行模式(底行模式) :先进入一般模式,然后输入" :、/ 、? "这三个中的任意一个即可进入;

c 复制代码
:w 或者 :x                   保存并退出;
:wq                          保存并退出;
:q                           退出;
:q!                          不保存退出;
:set nu 或者 set number      显示行数;
:n	                         定位到第 n 行;
:set nonu	                 取消行号;
/xxx                         查找 xxx ;

比如在命令行模式下输入 :set nu ,即可显示行数;

三种模式之间切换图

相关推荐
Xyz996_8 分钟前
Keepalived双机热备
linux·运维·服务器
小嘟嘟1312 分钟前
第1章 Shell 脚本入门:从 “Hello World“ 到自动化执行的完整路径
linux·运维·自动化·shell
I · T · LUCKYBOOM13 分钟前
23.ssh远程连接、TCP策略
linux·运维·服务器·网络·tcp/ip·ssh
weixin_6600967816 分钟前
tree命令的离线下载
linux·运维·tree
千百元17 分钟前
实时监控磁盘I/O性能
linux·运维·数据库
Vect__19 分钟前
Linux常见指令
linux·服务器
赖small强22 分钟前
【Linux 驱动开发】Linux设备驱动框架与驱动模型深度解析
linux·驱动开发·kobject·设备驱动模型·总线-设备-驱动架构·probe
福尔摩斯张29 分钟前
C语言文件操作详解(一):文件的打开与关闭(详细)
java·linux·运维·服务器·c语言·数据结构·算法
豐儀麟阁贵35 分钟前
9.4字符串操作
java·linux·服务器·开发语言
minji...36 分钟前
Linux 进程控制(二) (进程等待wait/waitpid)
linux·运维·服务器·数据结构