文本编辑工具vi

vi是Linux下标准的文本编辑程序,也是Linux系统命令行下最经常使用的文本文件可视化编辑器

vi编辑程序有两种工作模式,即命令模式和文本输入模式。在命令模式下,输入的字符被解释为vi命令;在文本输入模式下,输入的字符作为正在编辑的文件的正文内容来接受,按Esc键则切换到vi命令模式

1、命令行下用vi打开文件的命令选项

用vi打开文件的命令选项及说明
vi使用的选项 说明
vi filename 打开或者新建一个文件并将光标置于第一行的首部
vi -f filename 恢复上次vi打开时崩溃的文件
vi -R filename 把指定的文件以只读方式放入编辑器中
vi + filename 打开文件并将光标置于最后一行的首部
vi +n filename 打开文件并将光标置于第n行的首部
vi +/pattern filename 打开文件并将光标置于第一个与pattern匹配的位置
vi -c command filename

在对文件进行编辑前,先执行指定的命令

2、vi命令模式下的命令选项

移动光标类命令及其说明
按键或输入的字符 说明
h 光标左移一个字符
l 光标右移一个字符
Backspace键 光标左移一个字符
k或Ctrl+p 光标上移一个字符
j或Ctrl+n 光标下移一个字符
Enter键 光标下移一行
w或W 光标右移一个字到字首
b或B 光标左移一个字到字首
e或E 光标右移一个字到字尾
nG 光标移动到第n行首部
n+ 光标下移n行
n- 光标上移n行
n$ 相对于当前光标所在行,光标再向后移动n行到行尾
H 光标移至当前屏幕的顶行
M 光标移至当前屏幕的中间行
L

光标移至当前屏幕的最底行

0 将光标移至当前行首
$ 将光标移至当前行尾
:$ 将光标移动到文件最后一行的行首
屏幕翻滚类命令及其说明
按键或输入的字符 说明
Ctrl+u 相对于当前屏幕,向文件首翻半屏
Ctrl+d 相对于当前屏幕,向文件尾翻半屏
Ctrl+b 相对于当前屏幕,向文件首翻一屏
Ctrl+f 相对于当前屏幕,向文件尾翻一屏
nz+Enter 将文件的第n行滚至屏幕顶部,如果不指定n值,将当前行滚至屏幕顶部
插入与删除文本类命令及其说明
按键或输入的字符 说明
Esc 返回命令行模式
i 在光标前输入文字
a 在光标后输入文字
o 在当前行之下新开一行
O 在当前行之上新开一行
r 替换光标所在字符
x 删除光标所在的字符
dd 删除光标所在行。删除的内容自动保存在剪贴板
yy 将光标所在行复制到剪贴板,如果在yy前加数字,则表示复制n行
p 将剪贴板的内容复制到光标后
P 将剪贴板的内容复制到光标前
yw 将光标所在的单词复制到剪贴板
搜索及替换类命令及其说明
按键或输入的字符 说明
/abc 在文件中向前查找字符串abc
?abc 在文件中向后查找字符串abc
n 在同一方向重复上次的搜索命令
N 在相反方向重复上次的搜索命令
:s/a1/a2/g 将当前光标所在行中的所有a1均用a2替换
:n1,n2s/a1/a2/g

将文件第n1至n2行中所有的a1均用a2替换

:g/a1/a2/g 将文件中所有的a1均用a2替换
:set nu 给文件的每行加上行号
保存与退出类命令及其说明
按键或输入的字符 说明
:wq 保存并退出,“:wq!”表示不保存,强制退出
:q 不保存退出,“:q!”表示不保存,强制退出
:w 保存但不退出,“:w!”表示强制保存,“:w filename”表示将修改保存到“filename”中,相当于另存文件
x! 保存并退出

猜你喜欢

转载自blog.csdn.net/sinat_41231785/article/details/80945868