【linux笔记】vim

【linux笔记】vim

启动和退出

启动

bash 复制代码
vi

退出

bash 复制代码
q

强制退出

bash 复制代码
q!

编辑模式

bash 复制代码
vi foo.txt

创建一个文件,启动后,是命令模式,是不能编辑的,键盘上的按键对应不同的命令。

插入模式

按键盘上的i,进入插入模式

保存内容

bash 复制代码
:w

移动光标

按键 光标动作
L 右移一位
H 左移一位
J 下移一行
K 上移一行
数字 0 至本行开头
^ 至本行第一个非空字符
$ 至本行的末尾
w 至下一个单词或标点的开头
W 至下一个单词的开头,越过标点
b 至上一个单词或标点的开头
B 至上一个单词的开头,越过标点
Ctrl-F或Page Down 下一页
Ctrl-B或Page UP 上翻一页
number-shift-g 将光标移动到第n行
G 移动到文件最后一行

添加文本

A 在文件末尾添加
o 在当前行的上方加入一行
O 在当前行的下方加入行

删除文本

u 撤销操作(vi只可以撤销一步)
x 删除当前字符
3x 删除3个字符
dd 删除当前行
5dd 删除5行
dW 当前字符到下一个字符的起始
d$ 当前字符到行的末尾
d0 当前字符到行的起始
d^ 当前字符到第一个非空字符
dG 当前行到末尾
d20G 当前行到文件第20行

剪切、复制和粘贴文件

dd就是剪切操作

复制命令
yy 当前行
5yy 5行
yW 当前字符到下一个单词开始
y$ 当前字符到行尾
y0 当前字符到行首
y^ 当前字符到当前行的第一个非空字符
yG 当前行到文件结尾
y20G 当前行到第20行

p命令将复制的内容粘贴到当前行的下方,P命令将复制的内容粘贴到当前行的上方。

合并行

将光标所在行与下一行合并,J

行内搜索

f在行内进行搜索,并将光标移至搜索到的下一个指定字符。

搜索整个文件

"/"搜索单词,命令n去找下一个

全局搜索和替换

使用ex命令来执行几行之内或整个文件的搜索和替换操作。

bash 复制代码
:%s /Line/line/gc
组成 含义
: 分号用于启动一条ex命令
% 确定了操作作用的范围。%代表从第一行到最后一行。还可以表示为1,5.。或者是1,$.从第一行到最后一行。如果不指定,知识适用于第一行。
s 指定了具体的操作,本次为替换操作
/Line/line 搜索和替换的文本
g 代指global,如果缺失,那么只替换每一行第一个
c 在每次替换前,向用户发出询问

加入c后出现

他们大的功能是

功能键 行为
y 执行替换
n 跳过本次替换
a 执行此次替换和之后的所有替换
q 停止替换
l 执行此次替换后退出
Ctrl-E,Ctrl-Y 分别是向下滚动和向上滚动

编辑多个文件

bash 复制代码
vi file1 file2 file3 ...

切换文件

切换下一个文件

bash 复制代码
:n

切换上一个文件

bash 复制代码
:N

查看正在编辑的文件列表

bash 复制代码
:buffers

切换文件

bash 复制代码
:buffer 2

载入更多文件

bash 复制代码
:e ls-output.txt

插入整个文件

将光标移动到插入位置

bash 复制代码
:r foo.txt
相关推荐
辰海Coding2 小时前
MiniSpring框架学习笔记-解决循环依赖的简化IoC容器
笔记·学习
晓梦林2 小时前
cp520靶场学习笔记
android·笔记·学习
小鹏linux2 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
在角落发呆3 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
心中有国也有家3 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
玄米乌龙茶1233 小时前
LLM成长笔记(三):API 开发基础
笔记
Upsy-Daisy3 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
齐潇宇3 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警
LuminousCPP4 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
江公望5 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器