红联Linux门户
Linux帮助

RHCE第十七讲:交互工具与VI编辑器

发布时间:2010-12-07 10:47:37来源:红联作者:linuxcui
mesg
mesg负责控制你是否接收其它控制台发出的讯息,选项有y和n。
[kevinz@stationXX kevinz] $ mesg
y
(用户愿意接受与发送讯息)
[kevinz@stationXX kevinz] $ mesg
n
(用户不愿意接受与发送讯息)
write
write 用户名 [终端] ,然后输入短消息的内容,用ctrl+d结束。
[root@stationXX root] $ ls -l
/usr/bin/write
-rwxr-sr-x
1
root
tty
43593
Feb
25
08:11
/usr/bin/write
你会发现write设置了sgid,它的组是tty,所以普通用户使用write也可以向控制台写入。
wall
在shell下输入wall然后回车,然后输入需要广播的内容。用ctrl+d结束。
wall和write相似,也设置了squid。
Vi
vi是个可视化的编辑器(vi就意味着可视化--VIsual)。
那么,什么是可视化的编辑器呢?
相对于非可视化的编辑器而言,可视化的编辑器就是可以让你在编辑文本的时候看到它们。
今天,这听起来似乎非常普通,反之非可视化的编辑器似乎很奇怪.,其实非可视化的编辑器的例子可以举出不少:如ed,sed 和 edlin

。vi是威廉.侨伊写的,作为BSD UNIX的一部分,
后来AT&T也开始用vi,
于是标准UNIX也开始用vi了。
vi是UNIX下面的缺省编辑器,
因此几乎近来所有的UNIX都捆绑了vi(近来是指1984年左右)。这意味着无论何时你跨平台使用某种UNIX,你都知道在你指尖下面有一个强力的编辑器。为什么不是别的呢??vi是个强大的编辑器。同样一旦你了解了vi,你就能很快的编辑你的文件,因为它非常能节省你的敲键次数。
由于它在插入和命令两种情况下使用不同的模式,它比大多数的不基于这种模式的编辑器要快。
而且vi非常小(我机器上面的版本只有445K)。还有,vi几乎能做任何事,只要你知道如何使它做你想做的事。.
使用vi打开文件
直接键入vi,打开一个vi 窗口:
[kevinz@stationXX kevinz] $ vi

~
~
~
~
~
~
VIM - Vi IMproved
~
~
version 5.8.7
~
by Bram Moolenaar et al.
~
~
Vim is freely distributable
~
type
:help uganda
if you like Vim
~
~
type
:q
to exit
~
type
:help
or

for on-line help
~
type
:help version5
for version info
~
~
•如果文件发生更动,:w 文件名
可以将当前内容存为另一个文件。
Vi的模式
vi将命令模式和插入模式区分开来,这经常被认为是vi的一个大问题,但往往这也被认为是 vi的优势所在。
理解其中的区别是掌握vi的关键,vi启动时,开始处于命令模式。在这种模式下,我们可以在文件中到处移动,改变文本的某个特定区域、
剪切、
复制和粘贴文本,还有更
多。
插入模式是指用户可以真正插入文本。换句话说,命令模式是用来在文件中移动,而插入模式是用来在文件中键入文本。

•从命令模式进入插入模式:
•i:光标在当前位置进入插入模式
•I:光标跳到行首并进入插入模式
•a:光标后退一格并进入插入模式
•A:光标退到行尾并进入插入模式
•o:在光标所在行下新起一行并进入插入模式
•O:在光标所在行上新起一行并进入插入模式
•s:删除光标所在字符并进入插入模式
•S:删除光标所在行并进入插入模式
在vi中删除
•x/:删除一个字符
•nx:删除下n个字符
•dd:删除当前行
•dw:删至词尾
•ndw:删除后n个词
•d$:删至行尾
•nd$:删除后n行
在vi中剪贴
•yy:选定光标所在行复制
•yw:选定光标所在词复制
•nyw:选定光标所在位置到之后n个单词复制
•y$:选定光标所在位置到行尾的部分复制
•p:贴在光标所在位置之右
•P:贴在光标所在位置之左




•如果vi因shell关闭或一些特殊事件而被关闭,我们可以用vi -r 文件名来恢复之前的编辑状态。
•/<文本>将向前查找
•?<文本>将向后查找

??或者//将重复上次查找


命令模式的输入选项
: r <文件名> 把文件插入到光标处
:r !<命令> 把<命令>的输出插入到当前文本中
:nr <文件> 把<文件>插入到第n行
:!<命令> 运行<命令>,然后返回
:sh 转到SHELL
:so <文件> 读取<文件>,再执行文件里面的命令
文章评论

共有 0 条评论