之前咱们学了最常用的10个命令,已经能正常浏览目录、创建删除文件了。但光看不行,咱们还得写。
写代码、改配置文件,都需要一个编辑器。Linux下最强大的编辑器就是 vim。
可能你之前听说过vim很难学,"模式"概念让人头晕。但我告诉你:入门只需要5分钟,真正难的是进阶。不过作为嵌入式工程师,日常编辑场景其实很简单,掌握基础就够用。
vim和其他编辑器最大的不同是有模式。这有点反直觉,但习惯后会爱上它。
vim有三种最常用的模式:
1. 正常模式(Normal Mode)
打开文件后的默认模式。这个模式下,键盘按键不是输入字符,而是执行各种操作命令。比如 j 是向下移一行,x 是删除一个字符。
2. 插入模式(Insert Mode)
就是普通编辑器的输入模式。这个模式下,你输入什么就直接显示在文件里。
3. 命令行模式(Command-Line Mode)
在底部输入命令的模式,用来保存文件、退出、搜索等。
三者之间的切换:
正常模式 → 按 i → 插入模式 插入模式 → 按 Esc → 正常模式 正常模式 → 按 : → 命令行模式记住一点:大部分时间在正常模式,需要输入时再进插入模式。这是vim高效的核心。
在终端输入:
vim test.c如果文件不存在,vim会创建一个新文件并打开。打开后是正常模式,界面大概是空的。
按 i 进入插入模式,底部会显示 -- INSERT --,现在开始可以正常输入:
#include <stdio.h> int main() { printf("Hello, Linux!\n"); return 0; }输入完成后,按 Esc 回到正常模式。
在正常模式下,按 : 进入命令行模式,然后输入命令:
:w # 保存(write) :q # 退出(quit) :wq # 保存并退出 :q! # 不保存强制退出还有一种更快的:在正常模式下按 ZZ( Shift + z+z),直接保存并退出。
学会这些,你就能正常编辑文件了:
jklh 对应下上左右,用熟了比方向键快。当然你也可以用方向键,没问题。
0 —— 移到行首$ —— 移到行尾gg —— 移到文件开头G —— 移到文件结尾x —— 删除光标所在字符dd —— 删除整行yy —— 复制整行p —— 粘贴u —— 撤销Ctrl+r —— 重做dd 删除的行会放到剪贴板,可以用 p 粘贴出来。
cw —— 删除光标到单词结尾并进入插入模式caw —— 删除整个单词并进入插入模式r —— 替换光标所在字符R —— 进入替换模式比如你想把 int 改成 long,把光标停在 i 上,按 cw 然后输入 long 就行。
查找:在正常模式下按 /,然后输入要查找的内容,按 Enter。
/printf按 n 跳到下一个匹配,按 N 跳到上一个。
替换:在命令行模式下:
:s/old/new/ # 替换当前行第一个old :s/old/new/g # 替换当前行所有old :%s/old/new/g # 替换整个文件所有oldvim支持分屏,嵌入式工程师经常要同时看多个文件:
:sp filename # 水平分屏 :vsp filename # 垂直分屏分屏后,Ctrl+w 然后按方向键切换窗口。
vim的功能可以通过 .vimrc 文件自定义。嵌入式工程师常用的配置:
set number " 显示行号 set tabstop=4 " Tab键宽度 set shiftwidth=4 " 自动缩进宽度 set autoindent " 自动缩进 syntax on " 语法高亮把这些写进 ~/.vimrc,每次打开vim都会生效。
咱们一起操作一遍:
vim hello.ci 进入插入模式,输入:#include <stdio.h> int main() { printf("Hello, vim!\n"); return 0; }Esc 回正常模式:wq 保存退出再打开试一下:
vim hello.c/printf 查找 "printf"n 跳到下一个u 撤销一个操作:q 退出一套下来,vim基本操作你就学会了。
今天咱们学了vim编辑器的基础:
三种模式:正常模式、插入模式、命令行模式
基本操作:i 进入插入,Esc 回正常,:wq 保存退出
移动:jklh 或方向键,gg 开头,G 结尾
编辑:dd 删除行,yy 复制,p 粘贴
查找:/ 查找,n 下一个
vim确实需要时间熟悉,但嵌入式工作中真的不需要掌握太多。会打开、编辑、保存、退出、查找,这5个操作就够cover 90%的场景了。
下一期咱们聊聊文件内容怎么看——cat、less、head、tail、grep这些命令,让你快速定位问题。
下期预告:文件内容怎么看?cat、less、head、tail、grep,查日志找问题必备。