终端编辑器-vi
2024-02-25 16:20:51 7 举报
AI智能生成
登录查看完整内容
vim编辑器的常用操作,一图打尽.
作者其他创作
大纲/内容
上下左右
0 行首
^ 行首(第一个不是空白字符的位置)
$ 行尾
w word 向后移动一个单词
b back 向前移动一个单词
单词
行内移动
gg 文件顶部
G 文件尾部
数字gg 移动到对应行
数字G 移动到对应行
:数字 移动对应行
行数移动
Ctrl + b back向上翻页
Ctrl + f forward向下翻页
H Head屏幕顶部
M Middle屏幕中间
L Low屏幕底部
屏幕移动
基本移动
{ 上一段
} 下一段
段落移动
% 括号匹配及切换
括号切换
mx 添加标记x
'x 定位到标记x所在位置
标记添加切换
移动(程序)
移动
v 可视模式从光标位置开始按照正常模式选择文本
V 可视行模式选中光标经过的完整行
Ctrl + v 可视块模式垂直方向选中文本
ESC 可以放弃选中 返回到 命令模式
可视模式可以和移动命令连用例如:ggVG 能够选中所有内容
选中文本(可视模式)
u undo撤销上次命令
CTRL+r redo恢复撤销的命令
撤销和恢复
x删除光标所在字符,或者选中文字
d(移动命令)删除移动命令对应的内容
dd删除光标所在行,可以 ndd 复制多行
D删除至行尾
dw #从光标位置删除到单词末尾
d0 #从光标位置删除到一行的起始位置
d} #从光标位置删除到段落结尾
ndd #从光标位置向下连续删除 n 行
d代码行G #从光标所在行 删除到 指定代码行 之间的所有代码
d'a #从光标所在行 删除到 标记a 之间的所有代码
与移动命令的组合
删除文本
y(移动命令)复制
yy复制一行,可以 nyy 复制多行
p粘贴
复制 命令会将选中的文字保存在缓冲区
删除 命令删除的文字会被保存在缓冲区
粘贴 命令可以将缓冲区的文字插入到光标所在位置
vi 的 文本缓冲区只有一个如果后续做过 复制、剪切 操作之前缓冲区中的内容会被替换
vi 的文本缓冲区和系统的 剪贴板 不是同一个
注意
文本缓冲区
复制粘贴
>> 向右增加缩进
<< 向左减少缩进
. 重复上次命令
用法
只需使用一个> or <
可视模式用法
缩排
命令模式下先输入一个数字,再跟上一个命令,可以让该命令 重复执行指定次数
重复执行
/str 查找 str
查找到指定内容后 n: 查找下一个 N: 查找上一个
常规查找
* 向后查找当前光标所在单词 # 向前查找当前光标所在单词
单词快速匹配
r 替换当前光标后的一个字符
R 替换当前光标后的所有字符
替换
一次性替换文件中出现的所有旧文本
命令格式 :%s/旧文本/新文本/g
全局替换
可视区域替换
命令格式 :%s/旧文本/新文本/gc
确认替换
查找并替换
查找和替换
插入命令
常用命令
对服务器上的文件进行简单的修改时可以使用ssh登陆到远程服务器上使用vi进行简单的编辑
没有图形界面的环境下vi是最佳选择
为什么学习vi
Visual interface linux中经典的文本编辑器
设计思想:手指始终保持在键盘的核心区域就能完成所有的编辑操作
没有图形界面
不支持鼠标操作
特点
vi
代码补全
编译
错误跳转
等方便编程的功能
vim = vi improved
vim
vi & vim
vi简介
文件已经存在:直接打开该文件
文件不存在:新建一个文件
$ vi filename
只带上+而不指定行号定位到文件末尾
打开文件并定位 $ vi filename + num
如果 vi 异常退出磁盘上可能会保存有 交换文件
再使用 vi 编辑该文件时会看到以上屏幕信息按下字母 d 删除交换文件即可
异常处理
打开和新建文件
vi的入口打开文件首先进入命令模式
通过命令对文件进行常规的操作定位、翻页、复制、粘贴、删除
图形编辑器下通过快捷键和鼠标实现的操作都可以通过命令模式实现
命令模式
vi的出口退出vi返回到控制台要在末行模式下输入命令
w write 保存
q quit 退出
q! 强行退出
wq 保存并退出
x = wq
命令
末行模式
正常的编辑文字
编辑模式
三种工作模式
:e 路径 edit打开vim的文件浏览器浏览该路径下内容
:n 文件名 new新建文件
:w 文件名 write另存为,但是仍然编辑当前文件,并不会切换文件
:sp [文件名]split横向增加分屏
:vsp [文件名]vertical split纵向增加分屏
分屏命令
w window切换到下一个窗口
r reverse互换窗口
o other关闭其他窗口
q quit如果是最后一个窗口,则关闭 vi
c close不能关闭最后一个窗口
关闭当前窗口
关闭窗口
切换关闭.分屏窗口
+增加窗口高度
-减少窗口高度
窗口高度
>增加窗口宽度
<减少窗口宽度
窗口宽度
= 等分窗口大小
调整窗口的大小
分屏
末行命令的拓展
终端编辑器-vi
0 条评论
回复 删除
下一页