vim编辑器有三种模式:
编辑模式,输入模式,末行模式。输入vi文件名进入编辑模式,在编辑模式下输入 a/i/oA/I等命令,进入输入模式,当输入完毕后,按下Esc退出输入模式进入末行模式,:wq保存并退出。 cat一下,会看到我们输入的内容,如下图
对文件中的内容进行阅读:
Ctrl+f:向文件尾翻一屏
Ctrl+b:向文件首部翻一屏
Ctrl+d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
Enter:按行向后翻
方向键向下
方向键向上
*如上命令需要在编辑模式下执行。
当文件内容过多,我么可以通过一些指令打开文件并且准确定位到某一段内容:
比如;# vi [options] [file …]
+#:打开文件后,直接让光标处于第#行的行首
vim的编辑命令(基于编辑模式):
字符编辑:
x:删除光标所在处的字符;
#x:删除光标所在处起始的#个字符;
xp:交换光标所在处的字符与其后面的字符的位置
删除命令:
dd:删除光标所在处的行;
#dd:删除光标所处的行起始的共#行;
dw: 删除光标位置的下一个单词
de: 删除光标位置的到下一个单词的尾部
db: 删除光标位置的到上一个单词的首部
复制命令(yank, y):
yy:复制一整行
#yy:复制#行
粘贴命令(p, put, paste):
p:缓冲区中的内容如果为整行,则粘贴在当前光标所在行的下方;否则,则粘贴至当前光标所在处的后方;
P:缓冲区中的内容如果为整行,则粘贴在当前光标所在行的上方;否则,则粘贴至当前光标所在处的前方;
撤销(undo)操作:
u:撤销此前的操作;
#u:撤销此前的#个操作;
替换:
:1,2s/a/A/g --替换 1 到 2行的所有 a 为 A
:%s/c/B/g-- 替换整个文件的 c 为 B
关闭文件:
ZZ:保存并退出;(编辑模式)
:q 退出
:q! 强制退出,不保存此前的编辑操作
:wq 保存并退出;