打开
打开文件
命令:vi 文件名
文件存在直接编辑,不存在自动创建
打开文件并定位
命令:vi 文件名 +行数
光标会定位到最后一行
命令:vi 文件名 +
异常处理
若脚本未保存情况下意外退出
恢复文件
步骤:vi 文件名->R ->:wq->D
删除交换文件
步骤:vi 文件名->D
工作模式
常用命令
1.重复次数
命令:数字
2.移动和选择
2.1移动
命令:h左 j下 k上 l右
2.2行内移动
命令:w(word)右移一单词 b(back)前移一单词 0行首 $(shift+6)非空字符行首 $(shift+4)行尾
2.3行数移动
命令:gg文件顶部 G文件尾部 数字gg/G(ctrl+:数字) 跳转对应代码行
数字 移动到数字对应行数
2.4屏幕移动
命令:ctrl + b(back) 向上翻页 ctrl + f(forward) 向下翻页 H(Head)屏幕顶部 M(Middle)屏幕中间 L(Low)屏幕底部
2.5段落移动
命令:{ 上一段
}下一段 #空行区分段落
2.6括号切换
命令:% 括号匹配及切换 即在成对括号之间快速切换
2.7标记
命令:mx(mark x) 添加标记x,x是a-z或者A-Z之间任意一个字母
命令:‘x 直接定位标记x的位置
注:添加了标记的行被删除,标记同时会被删除
其他行添加了同名的行,原添加的标记也会被替换
2.8选中文本(可视模式)
3.编辑操作
删除、复制、粘贴、替换、缩排
3.1撤销和恢复撤销
命令:u(undo) 撤销上次命令
ctrl+r(redo) 恢复撤销命令
3.2删除文本
3.3复制、粘贴
3.4替换
3.5缩排(表示代码的归属关系)和重复执行
3.6查找
/“str” (查找"str")
n(next)查找下一个
N(next)查找上一个
*向下查找光标所在单词
#向上查找 光标所在单词
3.6.1查找并替换
:%s///g (查找并替换)
1)全局替换
:%s/旧文件/新文件/g
一次性替换文件中所有出现的旧文本
2)可视区域替换
: s/旧文件/新文件/g
步骤:V可视化 ->:s/旧文件/新文件/g
3)确认替换
:%s///gc
3.7插入命令
4.编辑
4.1编辑命令和数字连用
步骤:数字 -> i -> 编辑内容 -> esc
效果:重复数字次数的编辑内容
4.2利用可视块 添加多行注释
步骤:^ -> ctrl+v -> j -> I -> # ->esc
5.末行模式
5.1 末行模式
5.2分屏
ctrl+w状态下的操作指令