问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Vi命令的命令大全

发布网友 发布时间:2022-04-23 06:05

我来回答

2个回答

热心网友 时间:2023-10-18 05:54

本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi,而vi命令繁多,论坛里好像这方面的总结不多,以下稍做总结,以资共享!渴望更正和补充!
进入vi的命令
vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次进行编辑
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落最后一个字母
{:光标移至段落第一个字母
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾
屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
S:删除指定数目的行,并以所输入文本代替之
ncw或nCW:修改指定数目的字
nCC:修改指定数目的行
删除命令
ndw或ndW:删除光标处开始及其后的n-1个字
d0:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
mesg:允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行
寄存器操作
?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字
ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。
tags 用法
在函数中移动光标
[{ 转到上一个位于第一列的{
}] 转到下一个位于第一列的{
{ 转到上一个空行
} 转到下一个空行 ([ and ] 也分别是两个指令)
ctrl+t 跳回
gd 转到当前光标所指的局部变量的定义
* 转到当前光标所指的单词下一次出现的地方
# 转到当前光标所指的单词上一次出现的地方
Vim 的创造者是一名计算机程序员,因此这就不奇怪 Vim 中有许多帮助编写程序的功能:
跳转到标识符被定义和使用的地方;在另一个窗口中预览有关的声明等等。

热心网友 时间:2023-10-18 05:55

<a href='http://sayno.wang/index.php/2017/06/04/linux_vim/'>vim 命令</a>
这片文章说的非常好!可以借鉴一下
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
好玩的网游排名前十名 最简单的网游有哪些 ...风景模式、微距模式和夜晚风景模式的设置特点 鹰的重生的作品目录 记忆重构黄色轮盘密码锁密码是什么 解锁方法介绍 性感甜心轮盘游戏介绍 ...锁屏圆形壁纸教程介绍_抖音时间锁屏圆形壁纸教程是什么 时间轮盘姓氏怎么设置介绍_时间轮盘姓氏怎么设置是什么 家常牛排好吃又嫩的做法 怎样做家常牛排好吃又嫩 352口腔综合有哪些 猜猜他是谁作文写男生的 如何对stata回归结果说明? vim怎么去除重复单词 SAS 中set语句中的“obs=0”是什么意思 怎样使用vi? 工程中的CAR,OBS指什么意思? 怎么在excel 2007中删除空白行 obs*R-squared是什么意思 请教word如何 删除不含某关键字的行 求高手解释stata sur回归结果,参数名称是什么意思,结果说明什么,我是 ... 请按 ENTER 或其它命令继续 在进入vim编辑器前总会出现这行字,怎么设置把它消除掉,中间有很大的空行! 面板数据回归分析结果看不懂!! Vi命令的常用技巧 obs是什么意思? OBS什么意思 vim中,将光标移至第60行,并且删除行尾的15个字符,如何执行命令? 我家电脑没声音,上面显示没有音频设备怎么办? data回归分析中的obs是什么意思 请问vim空格 空行的标记怎么去掉?带着太乱。 您会看到空白页,因为系统中没有接入音频设备。要启动GUI。请酱音频设备接入到系统。怎么办 VI命令有那些? eviews的怀特检验结果中Obs*R-squared什么意思?谢谢~~~ linux vi保存退出命令 (如何退出vi) 回归分析中得出一元线性关系,P为0.005,R为86.3%,紧接着的方差分析中P为0.000,请问这两个如何解读?感谢 ols是什么意思? stata 回归分析结果,求大神解读。在线等。 matlab中obsv是什么意思 学习糕点北京哪里好? 北京哪里学糕点好? 推荐一下北京的蛋糕、西点的培训机构,希望有过学习经历或者从业者指点一下。 在北京哪有比较好的学西点的? 北京有那些学习烘培的学校? 北京哪可以学做糕点的? 学糕点到哪里好? 北京学做宫廷桃酥的培训机构哪有? 北京哪里培训蛋糕 北京哪家糕点师培训学校比较好点? 北京哪里有糕点师培训班 北京最好糕点点心学校 北京传统点心牛舌饼,究竟是怎样的做法? 北京哪里学做蛋糕好