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

相关推荐
雨大王5122 小时前
汽车生产智能计划助手如何提升排产效率并降低库存积压?
大数据·运维
嵌入小生0072 小时前
线程(2)/ 线程属性 /相关函数接口--- 嵌入式(Linux)
linux·嵌入式·线程·软件编程·僵尸线程·马年开工第一学·线程属性
以太浮标2 小时前
华为eNSP综合实验之- 3a认证配置案例及解析(AAA认证)
运维·tcp/ip·网络安全·华为·信息与通信
No8g攻城狮2 小时前
【Linux】Linux nano 编辑器全攻略:从入门到精通
linux·运维·编辑器·nano
zl_dfq3 小时前
Linux 之 【网络套接字编程】(固定宽度整数类型、socket常见API、netstat)
linux·网络
2301_805962934 小时前
arduino IDE如何设置代理
运维·服务器
shughui4 小时前
Docker Desktop下载、安装、配置、使用
运维·docker·容器·自动化
huaweichenai5 小时前
Linux安装http-server并部署html静态站点
linux·运维·服务器
Gss7775 小时前
Linux 正则表达式详解(基础 + 扩展 + 实操)
linux·运维·正则表达式
北冥湖畔的燕雀5 小时前
Linux权限与Vim,gcc以及make/makefile操作全解析
linux·运维·服务器