分享linux 命令—vi/vim命令
每日分享,稳步前进。
今天介绍的是vi/vim命令,他们都是多模式编辑器,vim是vi的升级版本,它兼容vi的所有指令,并且加了一些新的特性在里面。我们在文本编辑时都会使用到他,他的作用不容小觑。
今天因为篇幅原因,所以只介绍一部分内容,其余部分后续会持续完善。
vi一般分为3种模式,正常模式,输入模式,底行模式。
正常模式:使用vi或者vim进入文件中,首先处于正常模式,此时可以使用快捷键命令,或按:输入命令行。
输入模式:在正常模式下,按i、a、o等都可以进入输入模式。
底行模式:在正常模式下,按:键进入底行模式。
vi/vim的启动(vim兼容vi的所有指令,所以这里使用的vi指令,vim也都可以使用):
启动最简单vi+filename,此时如果存在此文件则进入该文件内,如果没有则会建立一个新的文件,这里通过网上查资料和自己试验,发现其建立的文件和touch建立的一样,感觉和touch这些命令有些功能重复了,但他不能创建目录,所以与mkdir不发生功能上的交集,当然笔者才疏学浅,没有往深了探索,如果有错误,希望大家可以在评论区指点一下谢谢。
vi +n filename :打开文件,并将光标置于第n行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 。
这里他并不是将光标放在你所查的文字处,而是该文字所处字符串的首位。还要注意+ 和 / 的位置。
vi -r filename :恢复上次异常退出的文件。
这里我验证没有成功,或许是我的方法不对。
我是使用xshell,先编辑文件,然后直接断开连接,然后再重新连接,然后使用这个指令,但没有成功,虚拟机上并没有直接测试,希望大家可以在留言解答一下。
vi filename....filename :可以打开多个文件,并且依次进行编辑
:files 查看当前打开了哪些文件
: n 切换到下一个文件
: N 切换到上一个文件
这里验证过,但图片不太好展示效果,所以大家可以自己试一下,但是:files命令并没有成功,有结果的朋友可以在评论区分享下。
同时打开多个文件后,复制粘贴这些工作就会舒服很多,但如果只是显示一个文件也不太方便我们操作。所以接下来介绍一个可以让我们更方便的指令。
vi -o filename1 filename2 ... 水平分割窗口
切换窗口可以使用Ctrl+w键,不知道是不是方法不对,有时跳转需要两次w。
垂直分割窗口笔者暂时没找的,vim到是有,但是咱们这里是说的vi,vim的内容会在后面分享给大家。
输入vi命令后,此时正常模式
此状态下敲击键盘动作会被Vi识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
这里我们介绍几个常用的命令
i:在光标前插入。
a: 在光标后插入。
A: 在当前行最后插入。
o: 在下面新建一行插入。
O: 在上面新建一行插入。
: 切换到底线命令模式,以在最底一行输入命令。
按下i键
底部会切换至INSERT
此时可以从键盘输入内容。
这里是我输入内容。
此时按Esc键退出输入模式。然后按:键进入底行模式。他可以将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
Linux中的退出保存有两种方式
第一种: :wq 保存且退出
:q!不保存强行退出
第二种: :x 保存退出(必须是修改的,如果是vi新文件进入,并且没有新内容,是建立失败的)
vi/vim知识点太多,本来以为可以很快总结完,结果越总结越发现更多的内容,突然感觉无从下手,所以先写了这一点,感觉写的有点乱,还是没有大体意识。