【Linux】vi编辑器

之前实习的时候用过,但是都是不懂的直接搜,加上记忆力差,安居客面试的时候面试官问到了,但是答不出来。直到现在心里还是很痛。。。好好学习,一个一个坑的补回来吧。

vi和vim是linux下的文本编辑工具,而vim是vi的升级版本,不仅兼容vi所有指令,还有一些新的特性在里面。

这篇笔记主要记录vi的基本操作。

一、两个操作模式

一个是输入模式,一个是指令模式。在输入模式下,可以输入文本,在指令模式下,可以输入指令。
在输入模式下,按Esc键切换到指令模式下。
在指令模式下,按输入指令(a、i、o)进入输入模式。

二、进入vi

$ vi filename
如果文件不存在,则新建一个内容为空的文件。

view filename
以只读方式打开文件。

三、指令模式

1.进入指令模式

命令作用
a在当前游标后面输入
A在当前行末输入
i在当前游标前面输入
I在当前行首输入
o在当前行之下新增一行,并在新增行输入
O在当前行之上新增一行,并在新增行输入

2.游标移动

命令作用
h向左移动一个字符长度
l向右移动一个字符长度
j向下移动一个字符长度
k向上移动一个字符长度
b左移一个单词,至词首
w右移一个单词,至词尾
0移到当前行行首
$移到当前行行尾
+移到下一行行首
-移到上一行的行首
H移至视窗的第一行
M移至视窗的中间一行
L移至视窗的最后一行
G移至该文件的最后一行
nG移至该文档的第n行
n+下移n行
n-上移n行

3.视窗移动

命令作用
Ctrl + f视窗下卷一页
Ctrl + b视窗上卷一页
Ctrl + d视窗下卷半页
Ctrl + u视窗上卷半页
Ctrl + e视窗下卷一行
Ctrl + y视窗上卷一行

4.删除操作

命令作用
x删除游标所在的字符
X删除游标所在的前一字符
dw从游标当前位置开始向后删除一个单词
db从游标当前位置开始向前删除一个单词
d0从行首删除至当前游标位置
d$从游标当前位置删除至行尾
D同d$
dd删除游标所在行

5.修改操作

命令作用
s修改游标所在字符,修改完成后按Esc结束
S修改整行内容,修改完成后按Esc键结束
r替换当前游标所在字符
R进入替换状态,直至按Esc键结束
cw修改一个单词(从游标位置至词尾)
cb修改一个单词(从词首至游标位置)
cc修改整行内容,完成后按Esc键结束,同S
c0修改行首至游标位置的内容
c$修改游标位置至行尾的内容
~游标所在字符大小写切换

6.指令重复

在指令模式中,可以在指令前面加上一个数字n,则该指令会重复执行n次。常用的有:

命令作用
nx删除n个字符
ndd删除n行
ns修改n个字符

7.取消前一动作(Undo)

命令作用
u取消前一动作

8.查找字符串

命令作用
/字符串从当前游标向后查找该字符串
?字符串从当前游标向前查找该字符串
n从当前游标向后查找下一个字符串
N从当前游标向前查找下一个字符串

9.查看编辑状态

命令作用
Ctrl + g显示正在编辑的文件名、当前游标所在行数、文件总行数、文件是否被修改

四、保存和退出

命令左右
w保存,但不退出
wq保存并退出
x同wq
q退出,如果当前文件没有保存,禁止退出
q!不保存退出
w file1将内容保存至文件file1中,此时编辑的仍未原文件
w! file1将内容覆盖保存至文件file1中,如文件file1存在,:w file1将禁止执行

以上。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值