《鸟哥的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 中实现高效的文本编辑。

相关推荐
运维成长记5 分钟前
linux 100个问答81~101 主要是k8s相关
linux·运维·服务器
旺小仔.22 分钟前
Linux--线程
linux·运维·服务器
我言秋日胜春朝★39 分钟前
【Linux网络编程】传输层协议-----UDP协议
linux·网络·udp
Mr. Cao code43 分钟前
探索OpenResty:高性能Web开发利器
linux·运维·服务器·前端·nginx·ubuntu·openresty
Nuyoah11klay2 小时前
华清远见25072班网络编程day1
linux·服务器·网络·网络编程
努力学习的小廉2 小时前
深入了解linux系统—— 日志
linux·运维·服务器
MilesShi5 小时前
从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
linux·运维·单片机
我爱云计算8 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes
2301_7943339110 小时前
实验室服务器配置|通过Docker实现Linux系统多用户隔离与安全防控
linux·服务器·docker·实验室
荣光波比11 小时前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算