Linux-vi/vim

vi是一个文本编辑器,用于撰写文档或开发程序

vim是vi的增强版,功能一致,可视化效果更好一些,去鼠标化,编辑更加方便,可定制化

vim编辑器是一个模式化文本编辑工具

vim有三种模式

编辑模式、插入模式和末行模式

模式一:编辑模式

进入文档默认的模式

作用:删除、复制、剪切、粘贴、替换单个字符等等

复制内容

yy:单行复制

p:粘贴

#yy:多行复制(#代表数字)

剪切内容(删除内容)

dd:单行剪切(删除)

#dd:多行剪切(#代表数字)

d0:光标之前的一个字符到行首的内容

d$:光标到行尾的内容

dw:删除光标所在位置的词组

移动光标

h:左移光标

l:右移光标

j:下移光标

k:上移光标

H:移动到当前屏幕第一行,注意不是文档的第一行

L:移动到当前屏幕的最后一行,注意不是文档的最后一行

M:移动到当前屏幕的中间行

ctrl+f:下翻一页

ctrl+b:上翻一页

ctrl+d:上翻半页

ctrl+u:下翻半页

#G:数字+G,定位到文档的指定行

gg:定位到文档的最后一行

w:跳转到最后一个词组的词首字母

b:向前跳转一个单词

x:删除一个字符

u:撤销上一步操作

查询功能

输入/ str :搜索功能(str表示一个单词)

n:向下跳转一个搜索关键词

N:向上跳转一个搜索关键词

特殊模式:替换模式

进入方法:R

退出方法:esc

模式二:插入模式

插入模式左下角会出现INSERT单词

作用:编辑文档的内容

进入插入模式的方法

i:在光标前进行插入内容

a:表示在光标后进行插入内容

o:表示在光标当前行的下一行进行编辑

I:表示在行首进行插入内容

A:在行尾进行插入内容

O:在光标所在行的上一行插入新行进行插入内容

模式三:末行模式

用于执行一些命令与bash进行交互或执行一系列自动化指令

进入末行模式 :shift+:

保存:w

退出:q

保存退出:wq

强制保存退出:wq!

强制退出:q!

保存退出快捷方式:x zz shift+zz

命令执行:! command [option] 参数

读取命令执行结果:r ! command [option] 参数

读取其他文件的内容:r /path/file

显示行号:set nu

取消高亮:nohl

查找替换功能

指定范围替换

1,3 s/bin/cin/g 起始行,结束行 s/查找内容/替换内容/g g表示全部替换

全文替换

% s/222/444/g %表示全文替换

特殊替换

% s#222#444#g #作为替换命令格式分隔符

vi打看文件/创建文件

如果文件不存在,使用vim则先创建一个新文件

如果文件存在,则打开进入文件

同时打开多个文件

水平方向打开文件

vim -o[#] file1 file2...

例:vim -o2 file1 file2

垂直方向打开文件

vim -O[#] file1 file2...

例:vim -O[#] file1 file2

切换编辑的文件:Ctrl+ww

vim的配置文件的使用

配置文件的位置

全局配置文件:/etc/vimrc

作用范围是系统当中所有的用户,一般情况不建议使用

用户配置文件:当前用户家目录下.vimrc(建议使用的文件)

注意:用户vim配置文件有可能不存在,需要手工创建

相关推荐
q***441530 分钟前
Nginx 缓存清理
运维·nginx·缓存
ascarl20107 小时前
记录一下es节点掉线后修复好了的情况
运维·jenkins
阿巴~阿巴~8 小时前
JsonCpp:C++ JSON处理利器
linux·网络·c++·json·tcp·序列化和反序列化
ao_lang8 小时前
数据链路层
linux·服务器·网络
safestar20128 小时前
Elasticsearch深度实战:从分布式原理到生产环境踩坑全记录
运维·搜索引擎·全文检索·es
z***3358 小时前
【MySQL系列文章】Linux环境下安装部署MySQL
linux·mysql·adb
偶像你挑的噻9 小时前
13-Linux驱动开发-中断子系统
linux·驱动开发·stm32·嵌入式硬件
小兔薯了9 小时前
7. LNMP-wordpress
android·运维·服务器·数据库·nginx·php
福尔摩斯张9 小时前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
cookies_s_s9 小时前
项目--协程库(C++)前置知识篇
linux·服务器·c++