博客
关于我
Linux自学之旅-vim编辑器(vim使用)
阅读量:258 次
发布时间:2019-03-01

本文共 1388 字,大约阅读时间需要 4 分钟。

Vim编辑器(二)

一、Vim打开文件

在使用Vim编辑文件时,你可以按照以下方式打开文件:

vim 文件名称

如果系统中存在指定文件名的文件,Vim会直接打开该文件并进入命令模式;如果文件不存在,Vim会在保存并退出时自动创建一个同名的新文件。

二、进入编辑模式

在Vim中,除了命令模式外,还有编辑模式(Insert Mode)和末行模式(Insert Line Mode)。以下是进入编辑模式的几种常用方法:

  • 按下 ai:插入光标后面的字符或行末尾
  • 按下 AI:插入行首或光标前
  • 按下 oO:在光标当前行下方或上方另起一行

在编辑模式中按下 Esc键即可回到命令模式。

三、末行模式操作

在命令模式下按下 shift + 可以进入末行模式(Insert Line Mode)。末行模式下,以下命令会直接生效:

  • :w:保存并退出
  • :q:不保存退出
  • :wq:保存并退出
  • :wq!:强制保存并退出
  • :q!:强制不保存退出

你还可以在末行模式中设置一些参数以便于日常使用:

set nu              # 显示行号set nonu           # 取消行号显示set ruler           # 显示右下角的状态栏set syntax on      # 语法高亮

四、Vim实际操作

在实际使用Vim时,以下操作将对你来说非常有用:

1. 移动光标

  • 使用方向键(↑、↓、←、→)移动光标
  • gg:移动到文件开头
  • GG:移动到文件结尾
  • ^$:移动到行首或行尾
  • :n:跳转到指定行(如 :5n 跳转到第5行)

2. 删除或剪切

  • xX:删除单个字符
  • dd:删除一行
  • ndd:删除多行(如 5dd 删除5行)
  • dG:从光标位置到文件末尾删除

3. 复制

  • yy:复制一行
  • nyy:复制多行(如 5yy

4. 撤销

  • u:撤销上一次操作
  • Ctrl+r:反向撤销

5. 命令模式替换

  • r:替换光标所在处的字符
  • R:从光标所在处开始逐字符替换

6. 查找

  • 按下 /:启动查找模式
  • ?:从光标所在行向上查找
  • nN:查找下一个或上一个结果

7. 末行模式替换

在末行模式中,可以使用以下命令:

:1,10s/dd/jj/g    # 替换第1到第10行的所有 `dd` 为 `jj`:1,10s/^/#/g    # 注释第1到第10行:1,10s/^/\//g   # 取消注释:1,2s/a/0/       # 替换第1到第2行的第一个 `a` 为 `0`

8. 导入文件内容

在Vim中,可以使用以下命令将文件内容导入到编辑界面:

:r 文件名

如果需要执行系统命令,可以使用:

!命令

例如:

:r !ls

会将当前目录的文件列表导入到光标所在行。

五、字符替换

在Vim中,可以使用以下命令进行字符替换:

:ab 源字符 替换为字符

例如:

:ab mm 66@qq.com

会将所有 mm 替换为 66@qq.com

六、多文件打开

如果需要同时编辑多个文件,可以使用以下命令:

vim -o a1 a2

使用 -o 会在上下分屏打开文件;使用 -O 会在左右分屏打开文件。打开文件后,可以通过按住 Ctrl+W 加上方向键来切换文件。

以上就是Vim的基本使用方法和操作技巧,熟练掌握这些命令将大大提升你的编辑效率!

转载地址:http://myhx.baihongyu.com/

你可能感兴趣的文章
P2158 [SDOI2008]仪仗队
查看>>
P2260 [清华集训2012]模积和
查看>>
P3203 [HNOI2010]弹飞绵羊 —— 懒标记?分块?
查看>>
P3240 [HNOI2015]实验比较 树形DP
查看>>
P3950部落冲突
查看>>
P4313 文理分科
查看>>
SpringBoot中集成LiteFlow(轻量、快速、稳定可编排的组件式规则引擎)实现复杂业务解耦、动态编排、高可扩展
查看>>
SpringBoot中集成influxdb-java实现连接并操作Windows上安装配置的influxDB(时序数据库)
查看>>
P8738 [蓝桥杯 2020 国 C] 天干地支
查看>>
Package Header Cursor
查看>>
package,source folder,folder相互转换
查看>>
SpringBoot中集成Flyway实现数据库sql版本管理入门以及遇到的那些坑
查看>>
package.json文件常用指令说明
查看>>
SpringBoot中集成eclipse.paho.client.mqttv3实现mqtt客户端并支持断线重连、线程池高并发改造、存储入库mqsql和redis示例业务流程,附资源下载
查看>>
Padding
查看>>
paddlehub安装及对口罩检测
查看>>
SpringBoot中集成Actuator实现监控系统运行状态
查看>>
PaddleSlim 模型量化 源代码解读
查看>>
paddle的两阶段基础算法基础
查看>>
Page Object模式:为什么它是Web自动化测试的必备工具
查看>>