linux VI命令
VIM安装:
Red Hat / CentOS / Fedora:
· rpm -ivh vim-common-...rpm vim-minimal-...rpm vim-enhanced-...rpm vim-X11-...rpm
· yum install vim-common vim-minimal vim-enhanced vim-X11
Ubuntu / Debian:
· apt-get install vim vim-common vim-gnome vim-gui-common vim-runtime
从源代码编译VIM
· Download vim source from http://vim.org
· tar xzf vim-7.0.tar.gz
· cd vim70
· ./configure --prefix=/opt --enable-cscope
· make
· make install
基本“VI”特性
使用以下命令进入VI编辑模式:vi file-to-edit.txt
VI编辑器有三种模式,命令模式(command mode)、插入模式(insert mode)和命令行模式(command line mode):
1. 命令模式(command mode):字母或者语句中字符的交互VI命令。命令通常为大小写敏感。ESC键可以退出命令。
2. 插入模式(insert mode):文本被插入。ESC键中断插入模式并且返回至命令模式。可以通过键入”i”(插入),”a”(附加),”A”(在行末尾附加),”o”(在当前行后打开新行),”O”(???)命令进入插入模式。
3. 命令行模式(command line mode):通过输入“:”号以将命令行入口放置在屏幕的底端以进入此模式。
交互命令的部分列表:
游标移动:
|
按键 |
操作 |
|
h/j/k/l |
游标左移/下移/上移/右移 |
|
空格 |
游标右移一个空格位置 |
|
-/+ |
游标向下/向上移动到第一列 |
|
ctrl-d |
向下滚动半页 |
|
ctrl-u |
向上滚动半页 |
|
ctrl-f |
向前滚动一页 |
|
ctrl-b |
向后滚动一页 |
|
M (shift-h) |
游标移动至页面中间 |
|
H |
游标移动至页顶 |
|
L |
游标移动至页底 |
|
w 5w |
每次向前移动游标一个字 向前移动游标5个字 |
|
b |
每次向上移动游标一个字 向上移动游标5个字 |
|
e |
游标移动到字尾 游标向前移动到第五个字的末尾 |
|
0 (zero) |
游标移动到行的开头 |
|
$ |
游标移动到行的末尾 |
|
) |
游标移到下一个句子的开头 |
|
( |
游标移到当前句子的开头 |
|
G |
游标移动到当前文件的末尾 |
|
% |
游标移动到匹配的字 将游标放置于{}()[]中并且输入% |
|
'. |
游标移动到上次修改的行 |
|
]' |
游标移动到下一个小写标记 |
|
[' |
游标移动到前一个小写标记 |
|
Ctrl+G 5G |
列出游标所在行的行号 移动游标至第5行行首 |
编辑命令:
|
按键 |
操作 |
|
i |
在游标处插入 |
|
a |
在游标处添加 |
|
A |
在行尾添加 |
|
ESC |
中断插入模式 |
|
u |
撤销上次改变 |
|
U |
撤销整行改变 |
|
o |
打开新行 |
|
dd |
删除一行 删除3行 |
|
D |
删除当前行中游标后的内容 |
|
C |
删除当前行中游标后的内容并且插入新的文本。键入ESC时中断插入。 |
|
dw |
删除字 删除4个字 |
|
cw cw3 |
更改游标所在处的字到字尾处 更改3个字 |
|
x 5x X 5X |
删除游标后的字符 删除游标后的5个字符 删除游标前的字符 删除游标前的5个字符 |
|
r |
替换字符 |
|
R |
替换字符直到按Esc为止 |
|
s |
替换当前行的第一个字符 |
|
S |
替换整行并且在行首进行插入 |
|
~ |
改变某个字符的大小写 |
|
/search_string{CR} |
搜索给定的搜索字符串? |
|
?search_string{CR} |
向后搜索给定的搜索字符串 |
|
/\<search_string\>{CR} |
搜索给定的字。当给定的字为字符串中的一部分时,将不被搜索到 |
|
n |
查找下一个搜索字 |
|
N |
查找上一个搜索字 |
|
. |
重复上一次命令操作 |
|
yw |
将光标所在处到字尾的字符复制到缓冲区中 |
|
p |
将缓冲区内的字符粘贴到光标所在位置(指令‘yw’与‘p必须搭配使用) |
|
yy 5yy |
复制光标所在行 复制从光标所在的该行往下数5行文字 |
|
p |
复制单行到您想粘贴之处。(指令‘yy’与‘p’必须搭配使用) |
|
ayy |
将复制行放入buffer a |
|
ap |
将放在buffer a的数据粘贴 |
|
b3yy |
将三行数据存入buffer b |
|
b3p |
将存在buffer b的数据粘帖 |
中断会话:
· 命令ZZ:保存改变并且退出;
· 命令行“:wq”:保存改变并且退出;
· 命令行“:w”:保存改变但是不退出;
· 命令行“:q!”:忽略改变并且退出。从上次修改后的任何改变将不会被保存;
· 命令行“:qa”:退出所有打开的文件。
浙公网安备 33010602011771号