Linux 基础学习篇 - Red Hat Linux 6.1

vi 文字处理软件 - for Red Hat Linux 6.1

大概在 1999~2000 年期间为了防止自己忘记所作的学习心得纪录!

最近更新时间: 2001/07/17

1999 年初次接触 Unix 系统,1999 年底接触 Red Hat 6.1,而在 2000 开始撰写一些心得文章,于是有了底下这些文本的产生。 这些文本对大家来说,可能没什么,但是对鸟哥来说,这是相当珍贵的!所有鸟站的数据起源,都是从这些文本开始的! 慢慢再将许多的指令分门别类的处理进去!网站的数据汇整,真的相当花费时间啊~

不过对于学习者来说,这些数据真的不要再读了!因为实在太老旧... 建议您前往本站查找最新版本的 Linux distribution 文章来阅读,比较不会浪费时间。最新文章请前往鸟站首页查阅啰!

vi 简易说明

要管理好 Linux 系统﹐少不了要对设置文件进行编辑,如果您用惯了 Microsoft Word 或 Corel Wordperfect 的话,除了 Xwindows 里面的编辑程序(如 xemacs )用起来尚可应付外,于 Linux 的文本模式下,会觉得文件编辑程序都没有 Windows 程序那么方便。虽然 Linux 下面也有好多种文书编辑器,例如﹕ed、vi、pico、joe、emacs等。

以下我们以最常见到的 vi 这套文书软件来介绍 Linux 底下的文书编辑动作。

基本上 vi 共分为两种模式,一种是『编辑模式』,一种被称为『命令模式』,其中,在命令模式中尚包含『命令行模式』的情况。『编辑』与『命令』这两种模式的切换动作是以 『Esc』来达成的。通常,文件一打开或者新建档时,会成为命令模式,如果要在文件中输入字符,就必需以小写的 i 来进入编辑模式,进入编辑模式后你输入的咚咚才会显示出来!那由『编辑模式』要变成『命令模式』时,就直接按『Esc』即可。而若要进入『命令行模式』时,就必须要在命令模式中输入『:』(冒号),那光标就会跑到屏幕的最下面一行来等待你输入啦!

简易运行范例

新建文件:
好了,我们在 Linux 底下创建一个名为 test.dat 的文件,可以这样打开一个新文件:
[root@tsai  root]#  vi  test.dat

进入编辑模式:
一进入 vi 的画面你会看到一片空白(乌漆嘛黑的),而且即会进入命令模式,你可以输入 i 来进入编辑模式,这时候你会看到屏幕的最下方会出现『--INSERT--』字样:

开始编辑:
这时候你就可以随便按几个字来输入一下,在这里要提醒一下,『Tab』键与空白键是不一样的咚咚喔!

回到命令模式:
在编辑模式的时候,不论你按什么键(除了 Esc 之外)都会被视为字符而显示在屏幕上,这时按下 Esc 键后会回到命令模式,如果你会到了命令模式,但是要消除你目前光标所在行的内容,你可以输入『dd』,就可以杀掉一整列了!

在命令行模式输入保存指令:
OK,我们要存盘了,存盘并离开的指令很简单,输入『:wq』即可存盘离开!这时你在提示字符后面输入『 ls -l 』即可看到我们刚刚创建的 test.dat 文件啦!

命令行内容说明

如前所述,所谓的命令行或命令模式,就是在最下面一行没有显示『--INSERT--』或者『--REPLACE--』字样的时候。通常在命令行中的指令有下面几种:(注意,当按下 『:』 时,光标会自动移动到屏幕的最下面一行!)
 


进入编辑模式:
i
插入:在目前的光标所在处插入输入之文本,已存在的文本会向后退;
a
增加:由目前光标所在的下一个字开始输入,已存在的文本会向后退:
o
插入新的一行:从光标所在的下一行枝行首开始输入文本;
r
取代:会取代光标所在的那一个字符;
R
全部取代:会一直取代光标所在的文本,直到按下 ESC 为止;


光标移动指令:
k  或向上键
向上移一个字符;
j  或向下键
向下移一个字符;
h  或向左键
向左移一个字符;
l  或向右键
向右移一个字符;
H
光标移动到屏幕顶端;
M
光标移动到屏幕正中央;
L
光标移动到屏幕最夏方;
+
光标移动至非空白字符的下一列;
-
光标移动至非空白字符的前一列;
[Ctrl] + [b]
屏幕向『后』移动一页;
[Ctrl] + [f]
屏幕向『前』移动一页;
[Ctrl] + [u]
屏幕向『后』移动半页;
[Ctrl] + [d]
屏幕向『前』移动半页;
[n]<space>
先按数字后再按空白键:光标向后面移动 n 个字符;
0
数字键『0』:移动到这一列的第一个字符;
$
移动到这一行的行尾;
G
移动到最后一行;
nG
移动到第 n 行(常与 :set nu 合用);
J
将目前光标所在行与下一行链接;


搜索指令:
/word
向光标之后寻找一个名为 『word』 的字符串;
?word
向光标之前寻找一个名为 『word』 的字符串;
:g/word1/s//word2/g
寻找 『word1』 这个字符串,并且以 『word2』 这个字符串取代之;
:n1,n2  s/word1/word2/g
将第 n1 行到 n2 行的字符串 『word1』 都改成 『word2』;
:1,$  s/ls/ll/g
将所有文件内容的 『ls』 这个字符串改成 『ll』 这个字符串;


删除与拷贝:
yy  或  Y
拷贝光标所在行的内容;
nyy  或  nY
『n』 为数字:拷贝光标所在行向下 n 行之内容;
p
将 yy 拷贝的内容贴到光标所在行的下面;
x
删除一个字符;
nx
『n』 为数字:删除 n 个字符;
dd
删除光标所在那一行;
ndd
『n』 为数字:向下删除 n 行;
u
取消前一个动作;
[Ctrl] + [L]
清除屏幕并重绘屏幕


命令模式:
:wq
将所做修改保存后离开 vi;
:w
仅保存文件;
:w  [filename]
将目前的内容保存到 『filename』 这个文件中(类似另存新档);
:r  [filename]
将 『filename』 这个文件内容加到光标所在行后面;
:q
离开 vi;
:q!
强制离开 vi ;


其他指令:
:set  nu
设置行号,让你可以轻易的找出错误;
:set  nonu
取消设置行号;
:n1, n2  w  [filename]
将 n1 到 n2 的内容存成 『filename』 这个文件;


OK!会这些指令就已经很厉害了,因为常用到的指令也只有不到一半!通常 vi 的指令除了常用的几个外,其他是不用背的,你可以做一张简单的指令表在你的屏幕墙上,一有疑问可以马上的查找幽!

2002/01/01以来统计人数
其他链接
环境工程模式篇
鸟园讨论区
鸟哥旧站

今日 人数统计
昨日 人数统计
本月 人数统计
上月 人数统计