solaris vi命令详解

 

本文转自http://blog.sina.com.cn/s/blog_4ac959fa0100h4n4.html,表示感谢

 

Vi编辑器的工作模式


Vi编辑器是一个命令行编辑器,有三种基本的操作模式:
命令模式
文本输入模式(编辑模式)
最后行模式
命令模式:vi的默认模式,在命令模式下,你可以键入命令来删除、更改、移动文本;定位光标;搜索文本字符串、退出vi编辑器。
文本输入模式(编辑模式):在编辑模式下,你可以往文件中输入文本。要使vi编辑器进入编辑模式下,可以采用以下三种不同的命令:

i 插入
o 打开
a 添加
最后行模式:当处于命令模式下时,通过键入:你可以执行更先进的编辑命令,键入:后,将使你处于屏幕的最后一行,这就称为最后行模式。然而,所有的命令都是由命令模式发起的。


模式间的切换:

通过键入I、o、a命令,vi编辑器将离开默认的命令模式,进入编辑模式。
在编辑模式下,你所键入的所有文本都不会被翻译成命令,这时,所有键入的文本都会被保存到文件中。
当你完成了文本的输入后,按Esc键vi将回到命令模式下,一旦回到命令模式,你可以保存文件,退出vi编辑器,例如:

1、键入 vi filename 来创建一个文件;
2、键入 i 命令来插入文本;
3、按 Esc 键回到命令模式;
4、键入 :wq 来保存到文件,退出vi编辑器。

调用vi编辑器
要创建一个新文件,调用带新文件名称的vi编辑器。也可以键入命令来创建、编辑、查看一个文件。
命令格式

vi options filename
view filename

输入命令
要插入或者添加文本,使用下面的选项:
命令含义

a 在光标右侧输入文本
A 在光标所在行的末尾输入文本
i 在光标左侧输入文本
I 在光标所在行的开头输入文本
o 在光标所在行的下一行开始新行
O在光标所在行的上一行开始新行

备注:vi编辑器是大小写敏感的,因此,使用命令时注意正确的大小写

定位命令

下面列出的是控制光标的移动键功能

h,左箭头,退格键光标左移一个空格
j,下箭头光标下移一行
k,上箭头光标上移一行
l,右箭头,空格键光标右移一个空格
w光标右移,到下一个字开头
b光标左移,到前一个字开头
e光标右移,到下一个字末尾
$光标右移到行结尾
0,^光标左移到行开头
回车键光标移到下一行开头
control-f下翻一屏
control-d下滚半屏
control-b上翻一屏
control-u上滚半屏
control-L刷新屏幕

编辑命令

以下部分讲解vi编辑器中的编辑命令
删除文本
要删除文本,使用下面选项:
vi编辑器中的文本删除命令
命令功能

x 删除光标所在处的一个字符
dw 删除字(或者删除字的一部分,从光标所在处到字结尾)
dd 删除光标所在行
D 删除光标光标所在处之右的行
:5 10d删除5-10行
备注:命令3dw删除光标所在处开始的三个字,同样,3dd删除光标所在行开始的3行。

撤销、重复、修改文本命令

要修改文本、撤销修改或者是重复编辑命令,使用下面的编辑命令,许多命令是vi编辑器进入编辑模式,要返回命令模式,按Esc键即可:
命令功能

cw 修改字(部分字,从光标所在处开始到一个字的结尾)
R 从当前光标所在处位置开始替换字符(注:vi将进入编辑模式)
C 从光标坐在处开始修改,到行末尾结束
s 用字符替换字符串
r 替换当前光标所在的字符
J 合并当前行以及下面行
Xp 转置光标所在处字符与另一字符
~ 更改光标所在处字符大小写
u 放弃最近的修改
U 放弃对当前行所作的修改
:u 放弃上一个最后行命令(用于最后行模式)
:r filename 在当前光标所在处读入文件文本

查找和替换文本,使用以下选项:

命令功能
/string 向下查找字符串string
?string 向上查找字符串string
n 查找字符串string的下一个出现
N 查找字符串string的上一个出现
:%s/old/new/g 全局查找和替换

拷贝和粘贴文本

拷贝命令把需要拷贝的文本放入一个临时缓冲区,粘贴命令从临时缓冲区中读取文本,并把文本写道当前文档的指定位置。拷贝和粘贴使用的选项如下:
命令功能
yy (小写)复制一行文本,并将他们放入到临时缓冲区
p (小写)将临时缓冲区中的内容放置到光标后面的位置
P (大写)将临时缓冲区中的内容放置到光标前面的位置
:l,3 co 5 拷贝1-3行的文本,并把它放置在第5行后面
:4,6 m 8 移动4-6行到第8行,第6行称为第8行,第5行称为第7行,第4行称为第6行

保存和退出文件

要保存和退出文件,使用如下选项:
命令功能

:w 保存文件,不退出vi
:w new_filename 保存到文件new_filename中
:wq 保存修改退出vi
:x 保存修改并退出vi
ZZ 保存修改且退出vi
:q! 不保存修改,退出vi
:wq! 保存修改,退出vi

定制vi会话

vi编辑器里面包括了定制vi会话的操作,例如:
1、显示行号
2、显示不可视字符,例如tab和行结尾字符
在命令模式下使用set命令可以控制这些选项:
编辑定制vi会话命令
命令功能

:set nu 显示行号
:set nonu 隐藏行号
:set ic 设置搜索时忽略大小写
:set noic 搜索时对大小写敏感
:set list 显示不可视字符
:set nolist 不显示不可视字符
:set showmode 显示当前操作模式
:set shownomode 不显示当前操作模式
:set 显示所有的vi环境变量设置
:set all 显示所有的vi环境变量可能取值及其当前设置值
你也可以把这些操作放在home目录下你创建的文件.exec中,set操作放在该文件中,不用带前面的:,一行一个命令,一旦该文件存在时,每次你开启一个vi会话时系统将取读取该文件来设置对应的vi环境变量。

要找某一特定行,使用下面的选项:
定位命令
命令 功能

G 到文件最后一行
1G 到文件的一行
:21 到第21行
21G 到第21行

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值