linux-vim编辑器
linux-vim编辑器
- 前言
- 一、命令模式
- 1. 跳转功能
- 2. 文本编辑
- 3. 模式切换
- 二、输入模式
- 1. 进入输入模式
- 2. 快捷键
- 三、末行模式
- 1. 进入末行模式
- 2. 文件操作
- 3. 查找与替换
- 4. 行操作
- 四、替换模式
- 五、可视模式
- 1. 进入可视模式
- 2. 文本操作
- 六、相关配置
前言
vim - Vi IMproved, a programmer’s text editor
vi的升级版,程序员文本编辑器(工具)
作用:
-
在linux里新建文本文件,修改配置文件
配置文件:configure file =》config
作用:给某个程序传递参数
ssh 是一个提供远程登录远程控制的服务–》运行起来后的进程叫sshd ssh daemon -
写程序: c,python,go,java,html等
集成开发工具:功能比较多,语法检查,高亮,直接调用背后环境去运行程序,安装软件包等
pycharm
goland
IDE
启动:vim 文件名 或 vi 文件名(若文件不存在则创建)
退出:
- q 退出(未修改时)
- q! 强制退出,不保存修改
- wq 或 x 保存并退出
一、命令模式
启动后的默认模式,也是 Vim 的核心操作模式。主要用于导航、编辑命令的执行和模式切换
1. 跳转功能
操作类型 | 操作键 | 功能 |
---|---|---|
光标方向移动 | 上下左右方向键或 h(左) j(下) k(上) l(右) | 移动光标位置 |
翻页 | Page Down 或 Ctrl+F Page Up 或Ctrl+B | 向下翻动一整页内容 向上翻动一整页内容 |
行内快速跳转 | Home键或 “^” 或数字“0” End键或“$”键 | 跳转至行首 跳转至行尾 |
行间快速跳转 | 1G或者gg G #G | 跳转到文件的行首 跳转到文件的末尾行 跳转到文件中的第#行 |
文件内容查找 | 输入 /word n 下一个 N 上一个 | 查找word |
2. 文本编辑
-
删除
删除单个字符: x、delete删除行:dd
3ddd^ 删除当前光标之前到行首的所有字符 ^:行首
d$ 删除当前光标之前到行尾的所有字符 $:行尾
dw 删除一个单词,以空格冒号等符号 -
复制
yy 复制一行
2yy 复制两行 -
粘贴
p 往下粘贴
P 往上粘贴 -
撤销
u -->undo -
恢复
Ctrl+r --> redo -
保存
ZZ 保存当前文件并退出
3. 模式切换
-
进入命令模式
vim 文件名 默认进入命令模式
ESC键 或 Ctrl + [ 从其他模式返回 -
进入输入模式
a、i 、o 等键 -
进入末行模式
: 键 -
进入可视模式
v 键 -
进入替换模式
R 键
二、输入模式
用于文本的直接输入,类似于常规编辑器的状态
1. 进入输入模式
i -> 在光标前插入 insert
a -> 在光标后插入
o -> 在光标所在行下新起一行并插入
O -> 在光标所在行上方新起一行并插入
I -> 在当前行的行首(第一个非空字符)插入
A -> 在当前行的行尾插入
s -> 删除当前字符并进入插入模式
S -> 删除整行并进入插入模式(等价于 cc)
2. 快捷键
Ctrl+h 删除前一个字符(等价于 Backspace)
Ctrl+w 删除前一个单词
Ctrl+u 删除至行首
Ctrl+n 自动补全下一个匹配项
Ctrl+p 自动补全上一个匹配项
三、末行模式
用于执行全局性命令的重要模式
1. 进入末行模式
在命令模式下按下 :(冒号)
-> 底部会显示 : 提示符
2. 文件操作
w -> 保存当前文件
w 新文件名 -> 另存为新文件
q -> 退出(仅当文件未修改时有效)
q! -> 强制退出,不保存修改
wq 或 x -> 保存并退出
e 文件名 -> 打开新文件(放弃当前修改)
e! -> 重新加载当前文件(丢弃所有修改)
r 文件路径 -> 导入文件
saveas 新文件名 另存为并继续编辑新文件
3. 查找与替换
:/sbin -> 向下查找sbin这个关键词并高亮显示
:?sbin -> 向上查找
n 显示下一个
N 显示上一个
取消高亮:查找一个不存在的word
: s /old/new/ 替换当前行第一个old为new
: s /old/new/g 整行替换
: 3,5s /old/new/ 替换3到5行
: %s /old/new/ 全部替换
: s /old//g 删除
: s /old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认 confirm
替换为 (y/n/a/q/l/E/Y)?
y 替换
n 不替换
a 全部替换
4. 行操作
: 1 跳转到第1行
: 5 跳转到第5行
: $ 跳转到最后一行
set nu(number) -> 显示行号
set nonu -> 不显示行号
四、替换模式
用于直接替换现有文本而不是插入
R -> 进入替换模式(覆盖式输入),按ESC退出
r -> 替换单个字符后返回(如 ra 将当前字符替换为 a)
五、可视模式
用于选中文本块,以便进行复制、删除、替换等批量操作
1. 进入可视模式
v -> 可视模式 visual --》选择一部分
V -> 可视行模式 VISUAL line --》选择行
ctrl+v -> 可视块模式 VISUAL block
2. 文本操作
d 删除选中文本(剪切到寄存器)
y 复制选中文本到寄存器
c 删除选中文本并进入插入模式
~ 切换选中文本的大小写
p 用寄存器内容替换选中文本
在选区内按 :
vim 会自动添加 :‘<,’> 前缀,表示对选区执行命令,命令操作同末行模式
六、相关配置
/root/.vimrc 可以给vim传递参数
vim /root/.vimrc
set nu # 显示行号
set cursorline # 高亮当前行
set ts=4 # Tab宽度为4个空格
合理配置 .vimrc,可以将 vim 定制成适合自己的高效编辑器