菜鸟科技网

Vi基本命令有哪些?

vi编辑器是Linux和Unix系统中广泛使用的文本编辑工具,其基本命令掌握对于系统管理和日常操作至关重要,vi有三种主要模式:命令模式(用于输入指令)、插入模式(用于文本输入)和末行模式(用于保存、退出等操作),理解这三种模式的切换是使用vi的基础。

Vi基本命令有哪些?-图1
(图片来源网络,侵删)

在命令模式下,用户可以通过按键进行光标移动、文本删除、复制粘贴等操作,光标移动是最基本的操作,h键向左移动一个字符,j键向下移动一行,k键向上移动一行,l键向右移动一个字符;0键(数字零)移动到行首,键移动到行尾,gg快速跳转到文件首行,G跳转到文件末行,nG跳转到第n行(如5G跳转到第5行),文本删除方面,x删除光标所在处的字符,nx删除从光标开始的n个字符(如3x删除3个字符),dd删除整行,ndd删除n行(如2dd删除2行),d$删除从光标到行尾的内容,d^删除从光标到行首的内容,复制粘贴操作中,yy复制当前行,nyy复制n行(如4yy复制4行),p在光标后粘贴,P在光标前粘贴,u撤销上一步操作,Ctrl+r恢复撤销的操作。

进入插入模式需要在命令模式下按下特定按键:i在光标前插入,a在光标后插入,o在当前行下方新建一行并插入,O在当前行上方新建一行并插入,I在行首插入,A在行尾插入,插入模式下,可以直接输入文本,按Esc键可返回命令模式。

末行模式通过在命令模式下输入进入,主要用于文件保存和退出。w保存当前文件,q退出vi,wq保存并退出,q!不保存强制退出,w filename将文件另存为filename,r filename读取文件内容并插入到光标位置,末行模式还支持搜索替换,/keyword从光标处向下搜索keyword,?keyword从光标处向上搜索keyword,n跳转到下一个搜索结果,N跳转到上一个搜索结果;s/old/new替换当前行的old为new,s/old/new/g替换当前行所有old为new,%s/old/new/g替换文件中所有old为new。

以下为常用vi基本命令的总结表格:

Vi基本命令有哪些?-图2
(图片来源网络,侵删)
操作类型 命令 功能说明
光标移动 h/j/k/l 左/下/上/右移动一个字符
0/$ 移动到行首/行尾
gg/G/nG 跳转到首行/末行/第n行
文本删除 x/nx 删除光标处/n个字符
dd/ndd 删除当前行/n行
d$/d^ 删除到行尾/行首
复制粘贴 yy/nyy 复制当前行/n行
p/P 光标后/前粘贴
撤销与恢复 u/Ctrl+r 撤销/恢复操作
进入插入模式 i/a/o/O/I/A 光标前/后/下方/上方/行首/行尾插入
保存退出 w/:q/:wq/:q! 保存/退出/保存退出/强制退出
文件操作 w filename 另存为filename
r filename 读取文件内容
搜索 /keyword/?keyword 向下/向上搜索keyword
n/N 下一个/上一个搜索结果
替换 s/old/new 替换当前行old为new
s/old/new/g 替换当前行所有old为new
%s/old/new/g 替换文件中所有old为new

掌握vi基本命令需要通过反复练习,熟悉命令模式与插入模式的切换,以及常用操作的快捷键,能够显著提高在Linux系统下的文本编辑效率。

相关问答FAQs
Q1: vi编辑器中如何快速跳转到文件的指定行?
A1: 在命令模式下,输入行号后按G即可跳转到指定行,跳转到第20行,输入20G;跳转到文件末行,直接输入G;跳转到文件首行,输入gg

Q2: 在vi编辑器中,如何批量替换文件中的特定内容?
A2: 在末行模式下,使用替换命令,若替换整个文件中的oldnew,输入s/old/new/g;若替换文件中所有行的oldnew,输入%s/old/new/g(表示整个文件范围),注意,替换前建议先保存文件或使用w!备份,避免误操作导致内容丢失。

Vi基本命令有哪些?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇