编辑命令
- i, insert
在光标前插入字符 - a, append
在光标后插入字符 - r, replace
替换光标处的字符 - I, 大写的i,insert
在当前行首插入字符 - A, append
在当前行尾插入 - O
在当前行之上新开一行 - o
在当前行之下新开一行 - x
删除光标处的字符 - d$
光标所在处到行尾的所有字符 - dd
删除整行 - u
撤销
命令
- :wq 或者 :x
保存退出 - :q
退出 - :q!
不保存退出
搜索命令
- /
/name
从光标处向后搜索 name
按n向后搜索下一个 - ?
?name
从光标处向前搜索 name
按n向前搜索下一个
默认是区分大小写的, 如果要不区分大小写, 那么如下设置
:set ignorecase
或简写成
:set ic
或者在查找指令后加\c标志, 如:
/search-text\c
如果返回默认区分大小写, 那么如下设置:
:set noignorecase
或简写成
:set noic
vi配置
在用户目录下建立.vimrc文件
语法高亮显示
syntax on
设置行号
set number
其它选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
nowrap:禁止换行,no wrap
mesg:允许vi显示其他用户用write写到自己终端上的信息
:!
在vi中执行SHELL命令
:! pwd
光标命令
k,j,h,l 上下左右光标命令
nG n为行数,该命令立即使光标跳到指定行
ctrl+G 光标所在行数和列数报告
w,b 使光标向前后向后跳动一个单词
0 (数字0)将光标移至当前行行首
$ 光标移至当前行行尾巴
跳转
gg或者:1 跳转到文件第一行
G或者:$ 跳转到文件末尾
屏幕翻滚类
- Ctrl+u 向文件首翻半屏
- CTRL+d 向文件尾翻半屏
- CTRL+f 向文件首翻一屏
- CTRL+b 向文件尾翻一屏
复制粘贴命令
粘贴 p
yy 复制当前行
yw 复制当前单词
:n,my 复制n至m行数据
:n,md 删除n到m行数据
:n,m co t 复制n到m行到t行处