【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 ,即可显示行数;

三种模式之间切换图

相关推荐
waving-black12 分钟前
利用frp和腾讯云服务器将内网暴露至外网(内网穿透)
linux·服务器·腾讯云·frp·内网穿透
stormsha24 分钟前
Linux中su与sudo命令的区别:权限管理的关键差异解析
linux·运维·服务器·鸿蒙系统·ux·batch命令
筏.k1 小时前
grep、wc 与管道符快速上手指南
linux
Johny_Zhao1 小时前
华为MAAS、阿里云PAI、亚马逊AWS SageMaker、微软Azure ML各大模型深度分析对比
linux·人工智能·ai·信息安全·云计算·系统运维
CodeOfCC2 小时前
c语言 封装跨平台线程头文件
linux·c语言·windows
科文小白狼2 小时前
Linux下VSCode开发环境配置(LSP)
linux·vscode·里氏替换原则·lsp
jugt3 小时前
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
linux·运维·centos
多多*4 小时前
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
linux·开发语言·redis·python·bootstrap·lua
何双新5 小时前
第21讲、Odoo 18 配置机制详解
linux·python·开源
21号 15 小时前
9.进程间通信
linux·运维·服务器