vim/vi程序编辑器常用命令

本文详细介绍了Vi/Vim编辑器的三种模式及其常用操作命令,包括一般模式下的光标移动、搜索替换,编辑模式下的删除复制粘贴,以及命令模式下的文件保存和退出等。适用于初学者快速掌握Vi/Vim的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vi三种模式:

1. 一般模式;

   vi/vim打开一个档案就直接进入一般模式,典型特征就是你可以用【上下左右】按

来移动光标。可以进行删除、复制、贴上等动作。

2. 编辑模式;

   ioarIOAR 进入编辑模式,在画面左下角出现【INSERTREPLACE】的字样,如果想回到一般模式,按下【ESC】退出编辑模式;

3. 指令列命令模式;

   在一般模式当中,输入【: / ?】三个中的任何一个按钮,就可以将光标移动到最底下

那一行。

 

常用命令:

模式

分类

指令

功能

扩展

 

光标移动

h

向左

10h(向左10个位置)

 

l

向右

同上

 

j

向下

10j(向下10个位置)

 

k

向上

同上

 

[Ctrl]+f

向下移动一页

 

 

[Ctrl]+d

向下移动半页

 

 

[Ctrl]+b

向上移动一页

 

 

[Ctrl]+u

向上移动半页

 

 

+

光标移动到非空格符的下一列

 

 

-

光标移动到非空格符的上一列

 

 

数字(n)+空格

光标向右移动N位

 

 

0或者功能键home

移到行首

 

 

$或者End

移到行尾

 

 

H

光标移动到这个屏幕最上方那一行的第一个字符

 

 

M

光标移动到这个屏幕中央那一行的第一个字符

 

 

L

光标移动到这个屏幕最下方那一行的第一个字符

 

 

G

移动到这个档案的最后一行

nG(移动到第n行)

 

gg

移动到这个档案的第一行

 

 

数字(n)+回车键

光标向下移动N行

 

 

搜寻与取代

/word

在光标之下找一个Word的字符串

 

 

?word

在光标之上找一个Word的字符串

 

 

n

重复前一个搜寻的动作

 

 

N

反向重复前一个搜寻的动作

 

 

:n1,n2s/word1/word2/g

在n1行和n2行之间寻找Word1这个字符串,并将Word1替换成Word2

 

 

:1,$s/word1/word2/g

在全文之间寻找Word1这个字符串,并将Word1替换成Word2

 

 

  删除
、复制
与贴上

x,X

x相当于[del]键,向后删除一个字符,X向前删除一个字符,相当于[backspace]

nx(向后删除n个字符)

 

dd

删除一整行

 

 

ndd

删除光标所在向下n行。

 

 

d1G

删除光标所在行到第一行的所有数据

 

 

dG

删除光标所在行到最后行的所有数据

 

 

d$

删除光标所在处该行的最后一个字符

 

 

d0

删除光标所在处该行的最前面一个字符

 

 

yy

复制所在那一行

 

 

nyy

复制光标所在行向下n行

 

 

y1G

复制光标所在行到第一行所有数据

 

 

yG

复制光标所在行到最后一行所有数据

 

 

y0

复制光标所在处该行的最前面一个字符

 

 

y$

复制光标所在处该行的最后一个字符

 

 

p,P

p将一复制的数据在光标下一行贴上,P在光标上一行贴上。

 

 

J

将光标所在行与下一行的数据结合成同一行

 

 

[Ctrl]+r

重做上一个动作

 

 

.

重复上一个动作

 

 

u

复原

 

 

进入插入模式

i

在光标字符前插入

 

 

I

在所在行第一个非空字符插入

 

 

a

在光标字符后插入

 

 

A

在所在行最后一个字符插入

 

 

o

在光标所在行的下一行出插入

 

 

O

在光标所在行的上一行出插入

 

 

进去取代模式

r

取代光标所在字符

 

 

R

一直取代光标所在文字,知道按下esc为止

 

 

退出编辑模式

[esc]

退出编辑模式

 

 

指令列的储存
、离开

:w

保存

 

 

:w!

强制保存

 

 

:q

离开

 

 

:q!

不保存强制离开

 

 

:wq

保存后离开

 

 

:wq!

强制保存后离开

 

 

ZZ

保存后离开

 

 

:w[filename]

另存为filename文件

 

 

:r[filename]

在编辑的内容存储到另一个filename的档案中

 

 

:n1,n2 w[filename]

将n1到n2的内容存储到filename的档案中

 

 

:!command

暂时离开vi到指令模式下执行command的显示结果(:!command ls /bin)

 

 

行号显示

:set nu

显示行号

 

 

:set nonu

取消行号

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值