linux-vim编辑器

linux-vim编辑器

  • 前言
  • 一、命令模式
    • 1. 跳转功能
    • 2. 文本编辑
    • 3. 模式切换
  • 二、输入模式
    • 1. 进入输入模式
    • 2. 快捷键
  • 三、末行模式
    • 1. 进入末行模式
    • 2. 文件操作
    • 3. 查找与替换
    • 4. 行操作
  • 四、替换模式
  • 五、可视模式
    • 1. 进入可视模式
    • 2. 文本操作
  • 六、相关配置


前言

vim - Vi IMproved, a programmer’s text editor
vi的升级版,程序员文本编辑器(工具)

作用:

  1. 在linux里新建文本文件,修改配置文件
    配置文件:configure file =》config
    作用:给某个程序传递参数
    ssh 是一个提供远程登录远程控制的服务–》运行起来后的进程叫sshd ssh daemon

  2. 写程序: 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
    3dd

    d^ 删除当前光标之前到行首的所有字符 ^:行首
    d$ 删除当前光标之前到行尾的所有字符 $:行尾
    dw 删除一个单词,以空格冒号等符号

  • 复制
    yy 复制一行
    2yy 复制两行

  • 粘贴
    p 往下粘贴
    P 往上粘贴

  • 撤销
    u -->undo

  • 恢复
    Ctrl+r --> redo

  • 保存
    ZZ 保存当前文件并退出


3. 模式切换

  1. 进入命令模式
    vim 文件名    默认进入命令模式
    ESC键 或 Ctrl + [      从其他模式返回

  2. 进入输入模式
    a、i 、o 等键

  3. 进入末行模式
    : 键

  4. 进入可视模式
    v 键

  5. 进入替换模式
    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 定制成适合自己的高效编辑器

你可能感兴趣的:(linux,编辑器,vim)