一、vi基本命令
1)光标命令
左h 上j 下k 右l
nG ——n为行数,该命令立即使光标跳到指定行;n为空,光标跳到文件最后一行。
Ctrl+G——光标所在位置的行数和列数报告
w,b——使光标向前或向后跳过一个单词
2)编辑命令
(n)dd 删除
(n)yy 复制
i 光标前插入
a 当前字母后插入
r 在当前光标处替换
cw 替换光标所在处的单词(从光标开始处)
dw 删除光标所在处的单词
x 删除(右)
X 删除(左)
u 撤销
. 重复上次操作
o 插入新行
J 合并两行
A 行尾
:.,3w /tmp/xx
:r /tmp/xx
3)查找命令
f 查找
/ 查找
4)复制粘贴命令
(n)yy 拷贝n行到剪切板
p 粘贴(后)
P 粘贴(当前)
二、vi选项设置
vi是一个强大的编辑器,它不仅可以用来处理我们平时的文本工作,还可以用来写程序文件。在用vi进行程序编辑时,它可以实现语法加亮显示、自动缩进、括号匹配等编辑功能。为控制不同的编辑功能,vi 提供了很多内部选项。
利用 :set 命令可以设置选项。基本语法为:
: set option 设置选项 option
常见的功能选项包括:
autoindent 设置该选项,则正文自动缩进
ignorecase 设置该选项,则忽略规则表达式中大小写字母的区别
number 设置该选项,则显示正文行号
ruler 设置该选项,则在屏幕底部显示光标所在行、列的位置
tabstop 设置按 Tab 键跳过的空格数。例如:set tabstop=n,n默认值为8
1)语法加亮显示
: syntax on 该命令在vi中打开语法加亮显示的功能。这样以后在输入的字符中,vi就会自动的识别出关键字,字符串以及其他的一些语法元素,并以不同的颜色来显示出来。
2)自动缩进
在vi中自动缩进的选项一般有以下的几种:
autoindent: 在这种缩进形式中,新增加的行和前一行有相同的缩进形式。
smartindent: 在这种缩进模式中,每一行都和前一行有相同的缩进量,同时能够正确的识别出{和},当遇到右花括号(}),则取消了缩进形式。此外还增加了识别C语言关键字的功能。如果一行是以#开头的,那么这种格式将会被特殊对待而不采用缩进格式。这种缩进格式强于autoindent。
cindent:这是C语言的缩进形式,采用这样的缩进方式的程序语言有:C,C++,Java等。当采用这种缩进格式时,vi就会自动的采用标准的C语言形式。这种缩进格式强于smartindent。
可以用如下命令进行缩进形式的设置:
:set autoindent(ai)
:set smartindent(si)
:set cindent(ci)
3)显示行号
:set number(nu) 显示行号
: set nonumber (nonu) 不显示行号
在每个用户的目录下,都有一个vi的配置文件”.vimrc”(没有的话可以自己创建)。用户可以编辑它,输入以上命令,使这些设置在每次vi时都有效。例如:在.vimrc文件中加入如下设置行:
set nu #显示行号
set nonu #不显示行号
set ic #查找时不考虑大小写
set noic #查找时考虑大小写
set smartindent #自动缩进
syntax on #语法加亮