三种模式: 1.命令模式(打开vi即进入命令模式)(入口) 作用:定位,翻页,复制,粘贴,删除等 快捷键: 移动光标:h,j,k,l 行内移动光标 向后移动一个单词:w 向前移动一个单词:b 行首:0 行首,第一个不是空白的字符位置:^ 行尾:$ 行数移动 文件顶部:gg 文件末尾:G 数字对应行数:数字gg==数字G 屏幕移动 向上翻页:ctrl+b 向下翻页:ctrl+f 屏幕顶部:H 屏幕中间:M 屏幕底部:L 段落移动 上一段:{ 下一段:} 标记 添加标记:m字母 (字母可以时a-Z之间任意一个) 返回定位:'字母 三种可视模式:(按 esc 返回命令模式) 可视模式:v (从光标开始按照正常模式选择文本) 可视行模式:V (选中光标经过的完整行) 可视块模式:ctrl+v (垂直方向选中文本) 可视模式下,可以和移动命令连用,如 ggVG 可以选中所有内容 撤销和回复撤销 撤销上次命令:u (可以一直撤销到文件打开) 恢复撤销的命令:ctrl+r 删除文本 删除光标所在字符或删除选中文本:x 删除移动命令对应的内容:d(移动命令) 删除光标所在的行:dd 删除光标位置到行尾:D 删除命令可以和移动命令连用,常见命令组合: dw : 从光标位置删除到单词末尾 d0 : 从光标位置删除到行首 d} : 从光标位置删除到段落结尾 ndd : 从光标位置向下连续删除n行 d数字G : 从光标所在行 删除到 指定数字行 之间的所有代码 d'a : 从光标所在行 删除到 标记a 复制粘贴 复制 : y(移动命令) 复制一行 : yy (可以 数字yy 复制多行) 粘贴 : p 替换 替换当前字符: r 进入替换模式,并替换当前光标往后的位置: R 缩进 向右增加缩进:>> 向左减少缩进:<< 可视模式下只需要按一次 < 或 > 重复 重复上一步操作:. 查找 查找str: /str 找到后 查找下一个:n 查找上一个:N 如果不想看到高亮显示,可以随便查找一个文件不存在的str 单词快速匹配 向后查找光标所在单词 : * 向前查找光标所在单词 : # 查找并替换(需要在末行模式下执行) :进入末行模式 基本格式: %s///g 全局替换 : %s/旧文本/新文本/g 可视区域替换 : 先用可视模式选中搜索范围 再进入末行模式,用 s/旧文本/新文本/g 确认替换(确认后才替换):%s/旧文本/新文本/gc 确认命令选项: y:yes,n:no,a:all q:quit进入编辑模式 在当前字符前插入文本 : i 在行首插入文本 : I 在当前字符后添加文本 : a 在行末添加 : A 在当前行后面插入一空行 :o 在当前行前面插入一空行 :O 删除当前字符并进入编辑模式 : s 删除当前行并进入编辑模式 : S给多行代码增加注释符号# 1.按0移至行首 2.按ctrl+v进入可视块模式 3.下移光标选中需要的多行 4.用 I 进入编辑模式 5.输入 # 6.按ESC返回命令模式,vi就自动在多行前加入 # 括号切换:% 在成对的括号内前后切换 输入一个数字再跟上一个命令,可以让该命令重复执行数字的次数 2.末行模式(命令模式按 : 进入)(出口) 作用:保存,退出等 快捷键 wq:保存并退出vi q!:不保存退出vi 3.编辑模式(命令模式按 i 进入) 命令模式:u 撤销上一步 :x 保存并退出 :e 文件名 或 e. 打开文件或选择文件打开(支持tab自动补全) :n 文件名 新建一个文件 :w 文件名 保存一个文件,相当于另存为 :sp 文件名 横向增加分屏 :vsp 文件名 纵向增加分屏 分屏:(基于ctrl+w操作,即先按一次ctrl+w,再输入下列命令) w : 切换另一个窗口 r : 上下或者左右窗口互换 c : 关闭当前窗口,但是不能关闭最后一个窗口 q : 退出当前窗口,如果时最后一个窗口,则关闭vi o : 关闭其他窗口 打开文件时: vi 文件名 +行数(打开时定位到行数) vi 文件名 + (打开时定位到文件末尾)打开文件时,出现有交换文件,按d删除交换文件即可
来源:https://www.cnblogs.com/huohu121/p/12300469.html