Linux编辑文件命令
一、引言
相信有很多程序员朋友,在长时间不操作linux系统或者初学linux命令时,都有跟我有一样的疑惑。
这个vim命令与vi命令有什么区别?不都是编辑器么?
接下来呢,我就通过这个问题进行阐述:
二、vi命令与vim命令
其实,很好理解:
首先来说它们两者的共同点:都是文本编辑器。
接下来是它们两者的不同点:
vi编辑器:vi是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样linux命令,
它的强大不逊色于任何最新的文本编辑器。他是我们使用Linux系统不能缺少的工具。
vim编辑器:vim可以当作vi的升级版本,vim最大的特点是具有程序编辑的能力,可以以字体颜色
辨别语法的正确性,方便程序设计。vim里面加入了很多额外的功能,例如支持正则表
达式的搜索、多文件编辑、块复制等等。
综上所述:
由于vi编辑器对于Unix及Linux系统的任何版本,vi编辑器都是完全相同的,
所以,我们只需学会vi编辑器,您将在Linux的世界里畅行无阻。
三、vi命令使用
vi基本上可以分为三种模式,分别是一般模式、编辑模式和命令行模式,各模式的功能区分如下:
①、一般模式:
当以vi打开一个文件就直接进入一般模式了(这是默认的模式)。在这个模式中linux命令,你可以使用
上下左右按键来移动光标,你可以使用删除字符或删除整行来处理文件内容,也可以使用
复制、粘贴来处理你的文件数据。
②、编辑模式:
在一般模式中可以进行删除、复制、粘贴等的操作,但是却无法编辑文件的内容,只有当到
你按下【i, I, o,O, a, A, r, R】等任何一个字母之后才会进入编辑模式。这时候屏幕的左下方
会出现【INSERT或 REPLACE】的字样,此时才可以进行编辑。而如果要回到一般模式时,
则必须要按下【Esc】即可退出编辑模式。
③、命令行模式:
输入【%20:%20/%20?%20】三个中的任何一个,就可以将光标移动到最底下那一行。在这个模式中,可以
提供查找、读取、存盘、替换字符、离开vi、显示行号等的动作则是在此模式中完成的。
此为概念的理解以及讲解。下面为命令的讲解。
四、一般模式
a.移动光标
h:控制光标左移一格
j%20:控制光标下移一格
k:控制光标上移一格
l%20:控制光标右移一格
ctrl+b:屏幕往后移动一页
ctrl+f%20:屏幕往前移动一页
ctrl+u:屏幕往后移动半页
ctrl+d:屏幕往前移动半页
0 :移到文章的开头
G:移动到文章的最后
$ :移动到光标所在行的行尾
^ :移动到光标所在行的行首
w:光标跳到下个字的开头
e :光标跳到下个字的字尾
b :光标回到上个字的开头
#l:光标移到该行的第#个位置,如:5l,56l
b.删除文字
x: 每按一次,删除光标所在位置的"后面"一个字符
#x: 例如,「6x」表示删除光标所在位置的"后面"6个字符
X:大写X,每按一次,删除光标所在位置的"前面"一个字符
#X: 例如,「20X」表示删除光标所在位置的"前面"20个字符
dd:删除光标所在行
#dd:从光标所在行开始删除#行
c.复制
yw:将光标所在之处到字尾的字符复制到缓冲区中
#yw:复制#个字到缓冲区 yy:复制光标所在行到缓冲区
#yy: 例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字
p: 将缓冲区内的字符贴到光标所在位置;
注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能
d.替换
r :替换光标所在处的字符。
R:替换光标所到之处的字符,直到按下「ESC」键为止
e.跳至指定的行
ctrl+g:列出光标所在行的行号
#G:例如,「15G」,表示移动光标至文章的第15行行首
f.更改
cw:更改光标所在处的字到字尾处
c#w:例如,「c3w」表示更改3个字
g.恢复上一次操作
u:如果您误执行一个命令,可以马上按下「u」,回到上一个操作;