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配置文件有可能不存在,需要手工创建

相关推荐
学嵌入式的小杨同学4 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
EverydayJoy^v^4 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
syseptember4 小时前
Linux网络基础
linux·网络·arm开发
b***25114 小时前
电池组PACK自动化生产线的关键流程与核心优势
运维·自动化
zl_dfq4 小时前
Linux 之 【多线程】(线程的概念、Linux中的线程、页表)
linux
郝亚军5 小时前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu
曦云沐5 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
哲伦贼稳妥6 小时前
职场发展-遇到以下情况请直接准备后手吧
运维·经验分享·其他·职场和发展
带土16 小时前
10. .out文件
linux
Exquisite.6 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql