Linux 命令vim(编辑器)

(一)vim编辑器的介绍

vim是文件编辑器,是vi的升级版本,兼容vi的所有指令,同时做了优化和延伸。vim有多种模式,其中常用的模式有命令模式插入模式末行模式:

(二)vim编辑器基本操作

1 进入vim编辑文件

h 复制代码
1  vim 文件路径       				//直接打开指定文件(光标位于首行或上次关闭文件时光标的所在行)
2  vim +数字 文件路径      			//打开指定文件并将光标移动到指定行(数字对应的行数)
3  vim +/关键词 文件路径    			//打开指定文件并高亮显示关键词
4  vim 文件路径1 文件路径2 文件路径3	//可同时打开多个文件,文件之间可切换操作

2 模式之间的切换

插入模式 :是可以直接将键盘输入的内容插入到文件的模式。
命令模式 :是通过vim指令进入操作的默认模式,可以切换成其他模式。
末行模式:是在屏幕的最末行进行命令输入的模式。

(三) 模式的详细介绍

1插入模式

i 光标不会移动

a 光标向后移动一个字符的位置 ,按Esc退出该模式后光标会向前挪一个字符的位置。

o 会有新起一行的操作,按Esc退出该模式后换行的操作仍不会撤销。

2命令模式

(1) 复制 粘贴 剪贴

复制代码
yy/nyy      复制光标所在行的内容,	n是数字,表示从光标处开始复制n行内容
p /np       粘贴剪切板中的内容, 	n是数字,表示从光标处开始粘贴n份相同的内容
dd/ndd      剪切光标所在行的内容,	n是数字,表示从光标处开始剪切n行内容;
			如果后续没有粘贴的操作,则该操作等同于删除

(2) 删除多个字符

复制代码
nx          行内删除,从当前光标位置起向右删除n个字符的内容(包括当前光标所指的字符)
nX          行内删除,从当前光标位置起向左删除n个字符的内容(不包括当前光标所指的字符)

(3) 撤销 与 恢复

复制代码
u           撤销上次的操作
ctrl + r    恢复撤销的操作(撤销的复原过程,输入该指令前未进行撤销操作,则会报错)

(4) 挪动光标

复制代码
shift + g (即G) 	将光标定位到文档内容的最后一行开头
gg                	将光标定位到文档内容的开头
n shift+g(即nG)   	将光标定位到文档内容的第n行开头
shift + 4(即$)   	将光标定位到当前所在行的行尾
shift + 6(即^) 	将光标定位到当前所在行的行首
n w               	以单词为单位,光标向后挪动一个单位(范围是整个文件,即可以跨行挪动光标)
n b                	以单词为单位,光标向前挪动一个单位(范围是整个文件,即可以跨行挪动光标)

(5) 字符切换相关的指令

复制代码
shift + ~        	快速进行大小写的切换(当前光标处)
n r + 替换后的字符 	替换当然光标所指向的内容

(6) 光标进行上下左右移位的按键

复制代码
h					向左
j					向下
k					向上
l					向右

3末行模式

(1)保存

复制代码
:w				字母w再回车,保存当前文件
:w 文件路径  	字母w+空格 + 文件保存路径

(2)退出

复制代码
:q   		退出当前文件
:wq			保存当前文件并退出
:q!    		强制退出,不保存对文件的修改并退出

(3)搜索/查找

复制代码
:/关键词     /+关键词再回车,按关键词查找,查找到的内容会被高亮显示
:nohl   	字母nohl再回车,取消查找到的内容的高亮显示,若不取消内容会一直高亮显示
N/n     	字母N/n,光标移动到上/下一个查找到的内容(属于命令模式)

(4)替换

复制代码
:s/搜索的内容/新内容     		用新内容替换光标所在行第一处被搜索到的内容
:s/搜索的内容/新内容/g       	用新内容替换光标所在行全部被搜索到的内容
:%s/搜索的内容/新内容        	用新内容替换整个文件每一行第一处被搜索到的内容
:%s/搜索的内容/新内容/g      	用新内容替换整个文件全部被搜索到的内容

(5)显示行号

复制代码
set nu	    字母set+空格+字母nu再回车,显示文件每行的行号,显示行号是暂时的下次打开该文件不会再显示
set nonu    字母set+空格+字母nonu再回车,取消行号显示

(6)多文件查看

复制代码
files   	字母files再回车,查看同时打开的所有文件的名称
  • %a 表示它对应的文件是当前操作的文件

  • 表示它对应的文件是上一个操作的文件

    open 文件名 字母open+空格+文件名再回车,切换到其他打开的文件进行操作
    bn 字母bn再回车,切换到下一个打开的文件
    bp 字母bp再回车,切换到上一个操作的文件

    sp [filename] 打开一个新窗口,如果加filename,表示在新窗口创建一个新文件,否则表示两个窗口为同一文件内容

  • 【ctrl】+ w +⬆/k 光标移动上窗口

  • 【ctrl】+ w +⬇/j 光标移动下窗口

  • 【ctrl】 + w + q 结束退出

注意:每执行完一次末行模式下的命令之后,都会自动退回到命令模式

相关推荐
wdxylb3 小时前
云原生俱乐部-shell知识点归纳(1)
linux·云原生
飞雪20074 小时前
Alibaba Cloud Linux 3 在 Apple M 芯片 Mac 的 VMware Fusion 上部署的完整密码重置教程(二)
linux·macos·阿里云·vmware·虚拟机·aliyun·alibaba cloud
路溪非溪4 小时前
关于Linux内核中头文件问题相关总结
linux
Lovyk6 小时前
Linux 正则表达式
linux·运维
Fireworkitte7 小时前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos
sword devil9008 小时前
ubuntu常见问题汇总
linux·ubuntu
ac.char8 小时前
在CentOS系统中查询已删除但仍占用磁盘空间的文件
linux·运维·centos
淮北也生橘1210 小时前
Linux的ALSA音频框架学习笔记
linux·笔记·学习
华强笔记13 小时前
Linux内存管理系统性总结
linux·运维·网络
十五年专注C++开发13 小时前
CMake进阶: CMake Modules---简化CMake配置的利器
linux·c++·windows·cmake·自动化构建