:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1 , n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行
寄存器操作
"?nyy:将当前行及其下n行的内容保存到寄存器?中 , 其中?为一个字母,n为一个数字
"?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
"?p:取出寄存器?中的内容并将其放到光标位置处 。这里?能是个字母 , 也能是个数字
ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中 。
进入vi
vi test
离开vi
:q! 离开vi,并放弃刚在缓冲区内编辑的内容 。
:wq 将缓冲区内的资料写入磁盘中,并离开vi 。
:ZZ 同wq
同wq
:w 将缓冲区内的资料写入磁盘中 , 但并不离开vi 。
:q 离开vi,若文件被修改过,则会被需求确认是否放弃修改的内容,此指令可和: w 配合使用 。
Vi 的操作模式
Vi 提供两种操作模式:
输入模式(insert mode)
指令模式(command mode)
当使用者进入vi后 , 既处于指令模式下,此刻键入所有字元皆被视为指令 。
输入模式:a(append) 游标之后加入资料 。
A 该行之末加入资料
i (insert) 游标之前加入资料
I 该行之首加入资料
o (open) 新增一行和该行之下供输入资料
O 新增一行和该行之上供输入资料
指令模式:B移至该行第一个字符,若光标在该行第一字符则光标移至上一行第一字符 。
b由游标所在位置之前一个字串的第一个字元
cc 删除整行,修改整行的内容 。
D以行为单位 , 删除游标在内后面的所有字符 。
db 删除该行光标前字符
dd 删除该行
de 删除自光标开始后面的字符
d加字符 删除光标所在位置至字符之间的单
E移至该行最后字符,若光标在该行最后字符则光标移至下一行最后字符
e由游标所在位置至该字串的最后一个字元
G 移至该档案的最后一行
h 向前移一个字元
j 向下移一个字元
k 向上移一个字元
0 移至该行之首
M 移至视窗的中间那行
L 移至视窗的最后一行
l 向后移一个字符
0 由游标所在位置该行的第一个字元
nG 移至该档案的第n行
n+ 自游标所在位置向后移n行至该行的第一字符
n- 自游标所在位置向前移n行至该行的第一字符
R 进入取代状态 , 直到《ESC》为止
s 删除游标所在字元,并进入取代模式直到《ESC》
S 删除游标所在之该行资料,并进入输入模式直到《ESC》
w 由游标所在位置之下一个字串的第一个字元
x 删除游标所在该字元 。
X 删除游标所在之前一字元 。
r 用接于此指令之后的字元取代(replace)游标所在字元
yy yank整行,使游标所在该行复制到记忆体缓冲区
显示该行之行号、档案名称、档案中最末之行号、游标所在行号占
总行号之百分比
$ 由游标所在位置至该行的最后一个字元 。
) 由游标所在位置至下一个句子的第一个字元 。
( 由游标所在位置至该句子的第一个字元 。
{ 由游标所在位置至该段落的最后一个字元 。
推荐阅读
- 怎么查看手机号属于谁使用,怎么查询手机号是谁的
- 西门子gis断路器时间如何调整,西门子sirius断路器复位
- 虚拟主机独立托管器,虚拟主机独立托管器怎么用
- 怎么删除电脑u盘痕迹记录,怎么清除电脑上的u盘记录
- python隐藏函数教程 python中隐藏字符
- css中有几个居中区别,css中的居中属性
- 服务器在美国为全球华人服务,服务器在美国是什么意思
- html5轻量游戏开发,html5网页游戏开发引擎
- php二进制文件数据解析 php 二进制读取文件