1、关于文本编辑器;
文本编辑器有很多,例如图形模式下的gedit、kwrite、OpenOffice . 文本模式编辑器包括vi、vim(vi的扩展版本)、Nano.vi和vim。 VI和vim是我们在Linux上最常用的编辑器。 为了让Linux的入门级用户能够在最短的时间内使用它,需要介绍VI(vim )的最简单的使用方法。
nano工具与dosOS下的edit操作相似,使用方法简单,所以不介绍。 如果你感兴趣的话,可以试试;
2、vi编辑器;
为什么要学会简单应用vi
vi或vim是Linux上最基本的文本编辑工具。 vi或vim不像图形界面编辑器那样易于单击鼠标,但在系统管理和服务器管理方面,vi编辑器比不上图形界面编辑器。 即使没有安装X-windows桌面环境,或者桌面环境崩溃,也需要文字模式编辑器vi;
vi或vim编辑器是用于创建和编辑简单文档的最有效的工具。
3、vi编辑器使用技巧;
3.1VI的调用方法;
[root@localhost ~]# vi filename
~
~
~
~
~
~
~
~
3.2 vi三种指令模式;
用于输入命令的Command模式;
用于插入文本的插入模式;
选择视觉模式、可视化亮点和正文;
3.3文件保存和退出;
命令模式是vi或vim的默认模式,如果是其他命令模式,请按ESC键进行切换。
按ESC键,然后输入:vi会在屏幕底部等待我们输入命令;
:w保存;
将: w文件名称另存为文件名称;
:wq! 保存结束;
:wq! filename注:将filename另存为文件名并退出;
:q! 不保存而退出;
:x应该保存并结束。 功能和:wq! 一样的
3.4光标移动;
按ESC进入命令模式,可以在以下键位置移动光标:
向下移动j行;
k上移一行;
将h左移一个字符;
向右移动l1个字符;
ctrl b向上移动一个屏幕;
ctrl f向下移动一个屏幕;
上箭头向上移动;
向下箭头向下移动;
向左箭头向左移动;
右箭头向右移动;
编辑文件时,j、k、l和h键也可以在这些操作命令之前附加数字,例如3j。 这表示向下移动三行。
3.5插入模式(插入文本;
I在光标之前插入;
a在光标之后插入;
I插入到光标所在行的开头;
a插入光标所在行的末尾;
o在光标所在行上方插入一行;
o在光标所在行下方插入一行;
删除s光标后的一个字符,进入插入模式;
s删除光标所在行,进入插入模式;
3.6文本内容删除操作;
x1个字符;
#x删除一些字符,其中#表示数字,例如3x;
删除dw单词;
#dw删除几个单词。 #用数字表示。 例如,3dw表示删除三个单词。
dd删除一行;
#dd删除多行,#表示数字。 例如,3dd表示删除光标行和光标的下两行。
删除d$行尾有光标的;
j清除光标所在行和上一行之间的空格,将光标行和上一行连接起来;
3.7恢复修改和删除操作;
u撤消修改或删除操作;
按ESC键返回“Command (命令)”模式,然后按u键撤消以前的删除或更改。 要撤消以前的更改或删除操作,请按u几次。 这和Word撤消操作相差不大;
3.8可视模式;
在最新的Linux发行版中,vi提供了可视模式。 因为vim只有这个功能。 如果您的vi没有此功能,则必须更换为vim。 打开可视模式,按ESC键,然后按v键进入可视模式;
视觉模式为高亮显示提供了非常易于使用的文本范围。 它显示在屏幕的底部
-- 可视 --
或
--VISUAL--
如图:
进入可视模式,我们就可以用前面所说的命令行模式中的光标移动指令,可以进行文本范围的选取。
选取文本范围有何用?
我们可以对某部份删除作业,按d键就删除了我们选中的内容。
选中内容后,我们按y就表示复制;按d表示删除;
值得一提是的删除的同时,也表示复制。我们返回到命令模式,然后移动光标到某个位置,然后按shift+p键,就把刚才删除的内容贴上了。我们先在这里提一句,在后文,我们还得详细说说。
退出可视模式,还是用ESC键;
3.9 复制和粘帖的操作;
其实删除也带有剪切的意思,当我们删除文字时,可以把光标移动到某处,然后按shift+p键就把内容贴在原处,然后再移动光标到某处,然后再按p或shift+p又能贴上;
p 在光标之后粘帖;
shift+p 在光标之前粘帖
来举一例:
比如我们想把一个文档的第三行复制下来,然后帖到第五行的后面,我们应该怎么做呢?
有两种方法;
第一种方法:
先把第三行删除,把光标移动到第三行处,然后用dd动作,接着再按一下shift+p键。这样就把刚才删除的第三行帖在原处了。
接着我们再用k键移动光标到第五行,然后再按一下p键,这样就把第三行的内容又帖到第五行的后面了;
第二种方法;
进入可视模式,按ESC键,然后按v键。移动鼠标指针,选中第三行的内容,然后按y键复制;再移动指针到第五行,最后按p键;
所以复制和粘贴操作,是命令模式、插入模式及可视模式的综合运用;我们要学会各种模式之间的切换,要常用ESC键;更为重要的学会在命令模式下移动光标;
3.10 关于行号;
有时我们配置一个程序运行时,会出现配置文件X行出现错误 。这时我们要用到行号相关的操作;
为所有内容添加行号;
按ESC键,然后输入:
:set number
光标所处位置
在屏幕的右下角,有类似如下的;
57,8 27%
在这之中,57表示第57行,8表示第8个字符;
3.11 查找和替换功能;
3.11.1 查找;
首先,我们要进入ESC键,进入命令模式;我们输入/或?就进入查找模式了;
/SEARCH 注:正向查找,按n键把光标移动到下一个符合条件的地方;
?SEARCH 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的
举一例:比如我想在一个文件中找到swap单词,我应该如下做;
首先按ESC键,进入命令模式,然后输入;
/swap
或
?swap
3.11.2 替换;
按ESC键进入命令模式;
:s /SEARCH/REPLACE/g 注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;
:%s /SEARCH/REPLACE 注:把文档中所有SEARCH替换成REPLACE;
:#,# s /SEARCH/REPLACE/g 注:#号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;
注:在这之中,g表示全局查找;我们注意到,就是没有替换的地方,也会把SEARCH高亮显示;
举例说明:
比如我们有一篇文档要修改;
我们把光标所在的行,把所有单词the,替换成THE,应该是:
:s /the/THE/g
我们把整篇文档的所有的the都替换成THE,应该是:
:%s /the/THE
我们仅仅是把第1行到第10行中的the,替换成THE,应该是;
:1,10 s /the/THE/g