《鸟哥的Linux私房菜基础篇》---5 vim 程序编辑器

目录

一、vim程序编辑器的简介

二、命令模式快捷键(默认模式)

1、光标移动

2、编辑操作

3、搜索与替换

三、插入模式快捷键

四、底行模式快捷键(按:进入)

五、高级技巧

1、分屏操作

2、多文件编辑

3、可视化模式


一、vim程序编辑器的简介

1、在Linux的vi编辑器中,快捷键是提高编辑效率的关键。

2、vi是原始的文本编辑器,而vim(Vi IMproved)是vi的增强版,提供了更多的功能和快捷键。用户可能实际上使用的是vim。

vi有三种主要模式:命令模式、插入模式和底行模式。

二、命令模式快捷键(默认模式)

1、光标移动
捷键 功能说明
h / 左移一个字符
j / 下移一行
k / 上移一行
l / 右移一个字符
w 跳到下一个单词开头
b 跳到上一个单词开头
e 跳到当前单词结尾
0 跳到行首(绝对行首)
^ 跳到行首的非空白字符
$ 跳到行尾
Ctrl + f 向下翻页(Page Down)
Ctrl + b 向上翻页(Page Up)
Ctrl + d 向下滚动半屏
Ctrl + u 向上滚动半屏
G 跳到文件末尾
nG(如 5G 跳到第 n
gg 跳到文件开头
2、编辑操作
快捷键 功能说明
i 进入插入模式(光标前插入)
a 进入插入模式(光标后插入)
o 在当前行下方插入新行
O 在当前行上方插入新行
x 删除光标所在字符
dd 删除整行
ndd(如 3dd 删除 n
yy 复制整行
nyy(如 3yy 复制 n
p 粘贴到光标后
P 粘贴到光标前
u 撤销上一次操作
Ctrl + r 重做(恢复撤销)
J 合并当前行和下一行
~ 切换光标所在字符的大小写
3、搜索与替换
快捷键 功能说明
/pattern 向前搜索 pattern
?pattern 向后搜索 pattern
n 跳到下一个匹配项
N 跳到上一个匹配项
:%s/old/new/g 全局替换 oldnew
:%s/old/new/gc 全局替换并确认每个替换

三、插入模式快捷键

快捷键 功能说明
Esc 退出插入模式,返回命令模式
Ctrl + o 暂时退出插入模式,执行一个命令模式命令后返回

四、底行模式快捷键(按:进入)

快捷键 功能说明
:w 保存文件
:q 退出编辑器(未修改时)
:q! 强制退出(不保存修改)
:wq:x 保存并退出
:set nu 显示行号
:set nonu 隐藏行号
:set ts=4 设置 Tab 为 4 个空格
:set expandtab 将 Tab 转换为空格
:s/old/new/g 替换当前行所有 oldnew

五、高级技巧

1、分屏操作
  • :sp:split:水平分屏。
  • :vs:vsplit:垂直分屏。
  • Ctrl + w + h/j/k/l:在分屏间切换。
2、多文件编辑
  • :e filename:打开新文件。
  • :bn:bp:切换到下一个/上一个文件。
3、可视化模式
  • v:进入字符可视化模式(选择文本)。
  • V:进入行可视化模式。
  • Ctrl + v:进入块可视化模式。

掌握这些快捷键后,你可以在 vi/vim 中实现高效的文本编辑。

相关推荐
Lw老王要学习35 分钟前
Linux容器篇、第二章_01Ubuntu22 环境下 KubeSphere 容器平台高可用搭建全流程
linux·运维·服务器·k8s·kubesphere·容器化
張萠飛1 小时前
Linux下如何使用shell脚本导出elasticsearch中某一个index的数据为本地csv文件
linux·运维·elasticsearch
晓枫-迷麟3 小时前
【nano与Vim】常用命令
linux·编辑器·vim
LucienShui3 小时前
Webhook 配置备忘
linux·运维·webhook
超级土豆粉4 小时前
从0到1写一个适用于Node.js的User Agent生成库
linux·ubuntu·node.js
PH_modest4 小时前
【Linux跬步积累】—— 网络编程套接字(二)
linux·运维·网络
CIb0la4 小时前
Ubuntu 25.10 将默认使用 sudo-rs
linux·程序人生·生活
成工小白4 小时前
【Linux】文件操作
linux·运维·服务器
程序员打怪兽5 小时前
基于V4L2摄像头智能识别拍照(人脸和手掌)
linux·嵌入式
鸠摩智首席音效师5 小时前
如何更改默认 Crontab 编辑器 ?
编辑器