Linux基础-Vim(一)入门和常用命令

Linux基础-Vim(一)入门和常用命令

    在所有的UNIX-Like系统中都会内建vi文本编辑器,vi是老式的文本编辑器,其他的文本编辑器则不一定会存在。而vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的正确性,方便程序设计。
    vi分为命令模式(Command mode)、编辑模式(Insert mode)、底线命令模式(Last line mode)3种模式。

命令模式(command mode)

用vi打开一个文件就进入了命令模式,在此模式中,你可以用上下左右键移动光标,也可以使用x(删除字符)、删除整行、复制、粘贴等操作处理文件的内容。

编辑模式(insert mode)

在此模式中,你可以进行文本编辑。在进入命令模式后,需要按下i,I,o,O,a,A,r,R等任何一个字母进入此模式。按下按键后,在窗口下方会有显示当前的操作,如INSERTREPLACE,此时就是进入了编辑模式。退出编辑模式按Esc

底线命令模式(last line mode)

在命令模式中按下: / ?中的任意一个即可进入底线命令模式。进入此模式后,光标会移动到最下面一行。在此模式下,你可以执行查询数据、显示行号、批量替换字符等操作。

注意:命令模式可以与编辑模式及底线命令模式切换,但编辑模式与底线命令模式之间不能直接切换。

接下来我们来尝试使用vim程序编辑器吧!
首先,我们先使用vim创建一个t1.txt文本文件。命令为vim + 新建的文件名。

在这里插入图片描述

创建后我们便进入了这个文件,当然,新文件为空文件。可以看到命令行最下面那一行显示了文件名称“t1.txt”,后面的中括号里面提示这是一个新文件。

在这里插入图片描述

然后我们按下i后进入编辑模式,同样的,在最下一行显示了“INSERT”,提示进入了插入模式。

在这里插入图片描述

我们编辑一段文本。在提示信息里面还有当前光标所在的位置,如下图,当前光标位于第3行,第10个字符位。

在这里插入图片描述

按下Esc回到命令模式,输入:(冒号)进入底线命令模式,输入wq保存并退出。

在这里插入图片描述

最后,我们使用cat指令查看文件内容。

在这里插入图片描述

我们使用vim打开一个文本文件,进入文本文件,可以看到最下面一行的提示信息中有文件的行数和字符数。如下图,此文件一共21行,1291个字符。

在这里插入图片描述

在命令模式下的一些功能键
按键或命令功能
h左箭头光标向左移动一个字符
j下箭头光标向下移动一个字符
k上箭头光标向上移动一个字符
l右箭头光标向右移动一个字符
数字+hjkl或上下左右箭头进行指定次数的移动
)光标移至句尾
(光标移至句首
}光标移至段落最后一个字母
{光标移至段落第一个字母
Ctrl+f屏幕向下移动一页
Ctrl+b屏幕向上移动一页
Ctrl+d屏幕向下移动半页
Ctrl+u屏幕向上移动半页
+光标移动到非空格符的下一行(即移动到下一行除空行外第一个非空格符处)
-光标移动到非空格符的上一行(即移动到上一行除空行外第一个非空格符处)
数字n+空格光标向右移动到光标所在处数起的第n个字符处
0Home光标移动到本行行首
$End光标移动到本行行尾
H光标移动到屏幕最上方一行的首个字符
M光标移动到屏幕中间一行的首个字符
L光标移动到屏幕最下方一行的首个字符
G光标移动到此文件的最后一行的首个字符
数字n+G光标移动到此文件的第n行
n++光标下移n行
n+-光标上移n行
n+$光标移至第n行尾
gg光标移动到此文件的第一行
数字n+enter光标向下移动n行
/+查询的字符串向光标之下寻找一个字符串
?+查询的字符串向光标之上寻找一个字符串
n重复前一个查找的操作
N反向进行前一个查找操作
:行数字1,行数字2s/源字符串/目标字符串/g在行1到行2之间寻找源字符串并替换成目标字符串
:1,$s/字符串1/字符串2/g从第一行到最后一行寻找字符串1,并将该字符串替换为字符串2
:1,$s/字符串1/字符串2/gc从第一行到最后一行寻找字符串1,并将该字符串替换为字符串2,且在替换前显示提示字符串给用户确认是否需要替换
x向后删除一个字符
X向前删除一个字符
数字n+x向后连续删除n个字符
dd删除(剪切)光标所在的一整行
数字n+dd删除(剪切)光标所在的向下n行
d1G删除(剪切)光标所在到第一行的所有数据
dG删除(剪切)光标所在到最后一行的所有数据
d$删除(剪切)光标所在处到本行的最后一个字符
d0删除(剪切)光标所在处到本行的第一个字符
yy复制光标所在的那一整行
数字n + yy复制光标所在的向下n行数据
y1G复制光标所在行到第一行的所有数据
yG复制光标所在行到最后一行的所有数据
y0复制光标所在的那个字符到该行行首的所有数据
y$复制光标所在的那个字符到该行行尾的所有数据
p将已经复制的数据在光标下一行粘贴
P将已经复制的数据在光标上一行粘贴
J将光标所在行与下一行的数据结合成同一行
c重复删除多个数据
u恢复前一个操作
Ctrl+r重复上一个操作
.重复前一个操作
命令模式切换到编辑模式功能键
按键功能
i进入插入模式(Insert mode),从光标所在处插入
I进入插入模式(Insert mode),从目前所在行的第一个非空格符处开始插入
a进入插入模式(Insert mode),从光标所在的下一个字符开始插入
A进入插入模式(Insert mode),从光标所在行的最后一个字符处开始插入
o进入插入模式(Insert mode),从光标所在的下一行处插入新的一行
O进入插入模式(Insert mode),从光标所在的上一行处插入新的一行
r进入替换模式(Replace mode),替换光标所在的一个字符一次
R进入替换模式(Replace mode),一直替换光标所在的字符,直到按下Esc停止
Esc退出编辑模式,回到命令模式
命令模式切换到底线命令模式功能键
命令功能
:w将编辑的数据写入硬盘文件中
:w!强制写入该文件,但具体看用户对文件的权限
:q退出vim
:q!强制退出不保存
:wq保存并退出
:wq!强制保存并退出
ZZ若文件没有修改,则不保存退出;若文件已经修改过,则保存并退出
:w 文件名将编辑后的文件另存为新文件
:r 文件名在编辑的数据中,读入另一个文件的数据,即在当前文件中追加新文件
:n1,n2 w 文件名将n1到n2的内容保存为新文件
:! command暂时退出vi到底线命令模式下执行command的显示结果
:set nu显示行号
:set nonu取消显示行号

参考文献:
《鸟哥的Linux私房菜基础学习篇》(第四版)
侵权即删。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值