Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41366
  • 博文数量: 5
  • 博客积分: 415
  • 博客等级: 一等列兵
  • 技术积分: 70
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-06 16:39
文章分类

全部博文(5)

文章存档

2011年(1)

2009年(1)

2008年(3)

分类: 嵌入式

2008-10-20 14:20:40

1、关于文本编辑器;文本编辑器有很多,比如图形模式的geditkwriteOpenOffice ... ... ,文本模式下的编辑器有vivimvi的增强版本)和nano ... ... vivim是我们在Linux中最常用的编辑器。我们有必要介绍一下vivim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它。

2vi 编辑器的使用方法;
2.1
如何调用vi

打开shell终端:
[root@localhost ~]# vi
  filename
~
~
~
~
~
~
~
~

注:上面得shell命令是让vi 可以自动帮你载入所要编辑的文件或是开启一个新文件(如果该文件不存在或缺少文件名)。
2.2 vi
的三种命令模式;
Command
(命令)模式,用于输入命令;

Insert(插入)模式,用于插入文本;
Visual
(可视)模式,用于视化的的高亮并选定正文;


2.3 文件的保存和退出;

Command 模式是vivim的默认模式,如果我们处于其它命令模式时,要通过ESC键切换过来。

当我们按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令;

:w  保存;
:w
  filename 另存为filename
:wq!
保存退出;
:wq! filename
注:以filename为文件名保存后退出;
:q!
不保存退出;
:x
应该是保存并退出 ,功能和:wq!相同
2.4
光标移动;

当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标;

j 向下移动一行;
k
向上移动一行;

h 向左移动一个字符;
l
向右移动一个字符;

ctrl+b  向上移动一屏;
ctrl+f
  向下移动一屏;

向上箭头    向上移动;
向下箭头
    向下移动;
向左箭头
    向左移动;
向右箭头
    向右移动;

我们编辑一个文件时,对于 jklh键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。

2.5 插入模式(文本的插入);

i  在光标之前插入;
a
  在光标之后插入;

I 在光标所在行的行首插入;
A
  在光标所在行的行末插入;

o  在光标所在的行的上面插入一行;
O
  在光标所在的行的下面插入一行;

s  删除光标后的一个字符,然后进入插入模式;
S
  删除光标所在的行,然后进入插入模式;


2.6 文本内容的删除操作;

x 一个字符;
#x
删除几个字符,#表示数字,比如3x
dw
删除一个单词;
#dw
删除几个单词,#用数字表示,比如3dw表示删除三个单词;
dd
删除一行;
#dd
删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行;
d$
删除光标到行尾的内容;

J 清除光标所处的行与上一行之间的空格,把光标行和上一行接在一起;


2.7 恢复修改及恢复删除操作;

u  撤消修改或删除操作;

ESC键返回Command(命令)模式,然后按u键来撤消删除以前的删除或修改;如果您想撤消多个以前的修改或删除操作,请按多按几次u。这和Word的撤消操作没有太大的区别;

2.8
可视模式;

在最新的Linux发行版本中,vi提供了可视模式,因为这个功能是vim才有的。如果您用的vi没有这个功能,就换成vim就有了。打开可视模式,按ESC键,然后按v就进入可视模式;

可视模式为我们提供了极为友好的选取文本范围,以高亮显示;在屏幕的最下方显示有;


-- 可视 --  

--VISUAL--

进入可视模式,我们就可以用前面所说的命令行模式中的光标移动指令,可以进行文本范围的选取。

选取文本范围有何用?

我们可以对某部份删除作业,按d键就删除了我们选中的内容。选中内容后,我们按y就表示复制;按d表示删除;

值得一提是的删除的同时,也表示复制。我们返回到命令模式,然后移动光标到某个位置,然后按shift+p键,就把刚才删除的内容贴上了。我们先在这里提一句,在后文,我们还得详细说说。

退出可视模式,还是用ESC键;

2.9 复制和粘帖的操作;

其实删除也带有剪切的意思,当我们删除文字时,可以把光标移动到某处,然后按shift+p键就把内容贴在原处,然后再移动光标到某处,然后再按pshift+p又能贴上;

p
在光标之后粘帖;shift+p 在光标之前粘帖

来举一例:

比如我们想把一个文档的第三行复制下来,然后帖到第五行的后面,我们应该怎么做呢?

有两种方法;

第一种方法:

先把第三行删除,把光标移动到第三行处,然后用dd动作,接着再按一下shift+p键。这样就把刚才删除的第三行帖在原处了。接着我们再用k键移动光标到第五行,然后再按一下p键,这样就把第三行的内容又帖到第五行的后面了;

第二种方法;

进入可视模式,按ESC键,然后按v键。移动鼠标指针,选中第三行的内容,然后按y键复制;再移动指针到第五行,最后按p键;

所以复制和粘贴操作,是命令模式、插入模式及可视模式的综合运用;我们要学会各种模式之间的切换,要常用ESC键;更为重要的学会在命令模式下移动光标;
2.10
关于行号;
有时我们配置一个程序运行时,会出现配置文件X行出现错误 。这时我们要用到行号相关的操作;
为所有内容添加行号;

ESC键,然后输入:

:set number

光标所处位置

在屏幕的右下角,有类似如下的;
         57,8          27%

在这之中,57表示第57行,8表示第8个字符;
2.11
查找和替换功能;

 2.11.1 查找;
首先,我们要进入ESC键,进入命令模式;我们输入/?就进入查找模式了;
/SEARCH
  注:正向查找,按n键把光标移动到下一个符合条件的地方;
?SEARCH
  注:反向查找,按shift+n 键,把光标移动到下一个符合条件的

举一例:比如我想在一个文件中找到swap单词,我应该如下做;

首先按ESC键,进入命令模式,然后输入;
/swap

?swap
2.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

3、关于本文;

我写本文的目的是让新手在最短的时间内用vivim创建、编辑和修改文件,所以说这篇文档并不是大而全的vi手册。如果把vi所有的功能都说全了,至少得写一本千页的手册;本也没有涉及更为高级的vi用法。如果想了解的更多,请查找manhelp


4vi参考文档;

当你需要查找vi相关命令时,可以使用下面得shell命令:
$man vi
或者$vi --help

注:这不是俺写的,俺只是linux入门菜鸟级人物,只是在网上看到这个,自己稍加整理下。自己学习的,希望对跟我一样的入门者有说帮助。

阅读(1126) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Linux shell脚本全面学习

给主人留下些什么吧!~~