本文共 1775 字,大约阅读时间需要 5 分钟。
打开和编辑一个文件 : sudo vi hello
编辑定位 sudo vi hello.py + 16
然后跳到第16行3种模式【命令模式(入口),末行模式(出口),编辑模式】
命令模式 ——> 按 i 编辑 —> 按:末行 按 ESC —> 命令模式 命令模式中 --> 按 dd 删除一整行 按 x 删除光标后的字符 h左,j下, k上 l右dw删除光标后
末行模式:
按 w 保存 按 q 退出,没保存不退出 按 wq或 x, 保存并退出方向移动:
h(键盘最左边:向左移动一个字符) l(键盘最右边: 向右边移动一个字符) j(没什么技巧: 向下) k(向上) 0(移动到最左边,也就是该行的第0个字符前) b(向左移动一个单词) w(向右边移动一个单词) shift+4 也就是$ —> 跳到行尾 shift+6 即 ^ 跳到行首(不是空白字符的位置)dw(delete a word: 从光标处删除到单词末尾)(单个w是跳下一个单词)
d0( 从光标处删除到0位置) d} ( 先按一下d ,然后 shift+] 从光标处删除到段落结尾 ) ndd (从光标处开始 删除 n行,默认n 为1) D (删除至行尾) x (等于剪切) d’a 删除标记a和光标之间的所有代码Ngg (go go 跳到第N行,N默认为0)
G (直接跳到最末尾,整篇文章的最后面) :N (跳到第N行) sudo vim hello.py +N (从终端打开文件直接跳到N行) ***标记跳行: *** (按m 然后输入一个字母,翻到另一页,按’+字母,跳回来 字母:m记 mark)ctrl+b(back 上一页)
ctrl+f (forward 下一页) H (Head 屏幕顶部) M (屏幕中间) L (low 屏幕底部)v 可视模式
V 可视行(直接选一行) Ctrl+v (可视块,竖直方向选择)yyNp (复制光标所在行,插入N遍)
y{移动命令} (copy的最后一个字母,要配合移动命令使用 复制) p (paste 粘贴) yy(复制当前行)u 回复一次(直到vi打开文件的状态)
ctrl+r redo注意:一个空行就是一段(vi就是这样区分的)
命令 d、x类似于 剪切操作 ctrl+x ,放到缓冲区
但是 vi的缓冲区和 系统的剪切板不是同一个,不能用 p命令之间粘贴,要在编辑模式点鼠标右键粘贴r 即replace 命令模式
R 替换模式(之间修改整个单词,即光标后面的所有都直接替换) 整体替换:替换可视区域
s/旧串/新串/g
一次替换所有
%s/旧串/新串/g
例子: %s/wfsdf/world/g
">> "向右边缩进
“<<” 向左边缩进 . 重复上一次缩进/str 查找str
n 查找下一个 N 查找上一个i: 在点前字符前插入文本
I: 行首 a: 当前字符后 append 文本 A: 在这一行的尾 加文本(直接跳到行尾部添加代码) o : 在当前行后面加入一空行 O 当前行前插入一空行A和I 要记牢
重点: 一个响指注掉多行代码
按 ctrl+v ,竖直选中多行开头,shift+i 然后#,然后esc末行扩展
:e 跳到到当前目录的文件 :n 新建文件 :w 另存为(默认保存,输入其他名字就另存为),不会切换文件 :x 保存退出vi编辑器的分屏命令:
:sp split 横向分屏 :vsp vertical split 纵向分屏ctrl+w:
r 替换两个屏幕的位置 w 切换分屏的另一个位置 c close退出屏幕,但是不关闭最后一个 q quit 退出当前窗口,如果最后一个就关闭 o other 关闭其他窗口转载地址:http://uauzi.baihongyu.com/