vi
命令方式/编辑方式:当前键入的字符都作为命令。
插入方式:当前键入的字符都被插入到文件缓冲区的当前光标位置
转义方式/末行模式:进行查找、退出等特殊操作。
用法
【dd/ndd】删除一行(到缓冲区)/删除多行
【0】移动到行首
【$】移动到行尾
【n+】向下移动n行
【n-】向上移动n行
【:n】移动到第n行
【i/I】insert 光标当前位置进行插入/行首插入
【a/A】append 光标后一位置进行插入/行尾插入
【o/O】光标当前行下面插入一行/上面插入
【w/W】移动到下一单词开始/字符串开始
【e/E】移动到下一单词末尾/字符串末尾
【b/B】移动到上一单词开始/字符串开始
【Ctrl+Y】向上滚动屏幕
【Ctrl+E】向下滚动屏幕
【p/P】将缓冲区的内容粘贴到光标的后/前面
【yy/nyy】复制当前行/复制多行(到内存缓冲区)
【set nu】显示行号
【】
【】
【】
c$ 用输入的正文替换从光标开始到本行末尾的所有字符
c0 用输入的正文替换从本行开头到光标的所有字符
删除当前1个字符 x(nx)
删除前面字符 X(nX)
重复执行上一次命令 .
取消上一次命令 u
:r file 读取file文件的内容,插入当前光标所在行的后面
向前检索 /pattern; :/pattern/
向后检索 ?pattern; :?pattern?
同/反方向重复检索 n/N
当前行替换第一个串 ���/str1/str2(可加行号范围)
当前行替换所有串 ���/str1/str2/g
全文替换 :1,$ s/str1/str2/g