vim编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器。它主要分为命令令行模式、插入模式和底行模式这三种,下面主要介绍一下这三种模式最简单常用的用法。
一.命令行模式
1.移动
光标左移:h
光标右移:l
光标上移:k
光标下移:j
光标向右移动一个单词:w(联想word)
光标向左移动一个单词:b(联想back)
移动到文件头:gg
移动某一行(如第3行):3gg
移动到文件尾:G
移动到行首:^ 
移动到行尾:$ 
 
2.翻页
向下翻一页:control + f(联想f-forward)
向上翻一页:control + b(联想b-backward)
向下翻半页:control + d(联想d-down)
向上翻半页:control + u(联想u-up)
 
3.剪切删除
删除单个字母:x
删除 n 个字母:nx(n 是数字,如从光标位置连续删除 3 个字母,输入3x )
删除(or剪切)单行:dd
删除多行:ndd(n 是数字,如从光标位置连续删除 3 行,输入3dd )
从光标所在行删除到文件尾:dG
把光标停留在需要删除的单词前面:dw
把光标停留在需要删除的单词前面(无视单词前面的空格):de
从当前光标处删除到行位:d^
从当前光标处删除到行首:d$(不删除当前光标)
删除单词:dw
删除n个单词:dnw(n 是数字,如从光标位置连续删除 3 个单词,输入d3w )
 
4.复制粘贴
复制单行:yy
复制多行:nyy
粘贴到光标上面一行:p(小写)
粘贴到光标下面一行:P(大写)
 
5.撤销
撤销:u
反撤销:ctrl+r
 
6.替换
替换光标所在处的字符:r
从光标所在处开始替换字符:R
 
7.搜索
向后搜索<字母>并跳转到第一个匹配的位置:f<字母> 
向前搜索<字母>并跳转到第一个匹配的位置:F<字母> 
向后搜索<字母>并跳转到第一个匹配位置之前的字母:t<字母>
向前搜索<字母>并跳转到第一个匹配位置之后的字母:T<字母> 
 
二.插入模式
在当前光标处进行编辑:i
在行首插入:I
在行末插入:A
在光标后插入编辑:a
在当前行后插入一个新行:o
在当前行前插入一个新行:O
替换从光标所在位置到一个单词的结尾字符:cw
 
三.底行模式
1.编辑操作
保存不退出 :w
把文件另存为新文件:w 新文件名
不保存退出:q
保存退出:wq 或者 x
强制:!
强制不保存退出,用于修改文件之后,不保存数据退出:q!
强制保存退出,当文件的所有者或 root 用户,对文件没有写权限的时候,强制写入数据使用:wq!
 
2.设置操作
显示行号:set nu
不显示行号:set nonumber
本行内容居中:ce  (center) 
本行内容居右:ri  (right)
本行内容居左:le  (left) 
 
所有内容只为了记录学习过程,vim其实一些高级的用法目前我还没有使用到,后续会继续补全完善,部分内容来源于网络,侵删。

【linux命令】最强大的编辑器vim用法简介(基础篇)的更多相关文章

  1. Linux命令行下的vim文本编辑器

    Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...

  2. Linux编程 19 编辑器(vim 用法)

    一.概述 在开启shell脚本编程之前,必须要知道一款文本编辑器的用法,如文本编辑的查找,剪切,粘贴,定位等, 本篇只讲vim编辑器.vim编辑器全名叫vi improved,是经过对Unix系统vi ...

  3. 自学Linux Shell10.1-使用编辑器vim

    点击返回 自学Linux命令行与Shell脚本之路 10.1-使用编辑器vim 所有的 Unix系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在.但是目前我们使用比较多的是 vim 编辑 ...

  4. Linux命令行快捷键及vim快捷方式

    Linux命令行快捷键 快捷键: tab键 自动补全路径 目录 名字, 自动不全命令 快捷键: ctrl +l(小写) 清屏 . ctrl +c 取消当前操作 快捷键: ctrl +d(小写) 退出当 ...

  5. Linux下内存映射文件的用法简介

    由于项目需要,所以学习了一下Linux下内存映射文件的用法,在这里共享一下自己的收获,希望大家提出宝贵意见,进行交流. 简介: 内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区 ...

  6. Linux中的代码编辑器vim

    Vim的三种工作模式 命令行模式 插入模式 底行模式 Vim 的命令行模式 命令行模式是进入vim后的初始模式,在该模式下主要是使用方向键来移动光标的位置,并通过相应的命令来进行文字的编辑. 切换方法 ...

  7. Linux命令(三)vim编辑器的常用命令

    .subTitle { background: rgba(51, 153, 0, 0.53); border-bottom: 1px solid rgba(0, 102, 0, 1); border- ...

  8. linux命令学习之:vim

    1. 关于Vim vim是我最喜欢的编辑器,也是linux下第二强大的编辑器. 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效. 如果是初学vi,运行一下vimtu ...

  9. linux 学习5 文本编辑器 vim

    vim 没有菜单,只有命令 //root用户既可以用vi,也可以用vim, 无实质性区别,vim是vi的升级版//粘贴用shift+insert , 要在insert模式下粘贴,否则粘贴不全// ^ ...

  10. 1.Linux命令行快捷键、Vim

    1. 命令终端的快捷键使用 ctrl+b 左移光标 ctrl+f 右移光标 ctrl+u 删除光标左边的内容 ctrl+k 删除光标右边的内容 ctrl+w 删除光标前的一个单词 =esc+ctrl+ ...

随机推荐

  1. 案例(一) Z-Indexing Geometry

    使用官方github包,部分解释来源于Viewer - Cesium Documentation      Cesium.Ion.defaultAccessToken =         " ...

  2. 运输问题—R实现

    table { margin: auto } 运输问题 随着社会和经济的不断进步,现代物流业蓬勃发展,如何充分利用时间.信息.仓储.配送和联运体系创造更多的价值,是物流运作必须解决的问题.运输问题(t ...

  3. CentOS8安装Oracle datebase 19C

        我这里安装Oracle数据库是rpm格式的包.需要先得有以下依赖包关系,先依次按此顺序安装. yum install ./compat-libcap1-1.10-7.el7.x86_64.rp ...

  4. Linux搭建docker

    ### 1. 查看系统的内核版本 ```bash[root@wide ~]# uname -r3.10.0-1160.el7.x86_64``` ### 2. 将yum更新到最新版本 ```bash[ ...

  5. scikit-learn 中 Boston Housing 数据集问题解决方案

    scikit-learn 中 Boston Housing 数据集问题解决方案 在部分旧教程或教材中是 sklearn,现在[2023]已经变更为 scikit-learn 作用:开源机器学习库,支持 ...

  6. YOLO4论文中文版

    文章目录 YOLO4论文中文版 摘要 1.介绍 2.相关工作 2.1.目标检测模型 2.2.Bag of freebies 2.3.Bag of specials 3.方法 3.1.架构选择 3.2. ...

  7. 小米商城主页展示HTML+CSS

    大佬们呀,花了好几天的时间总算是看着页面展示可以了,求赐教! 小米商城主页,对大佬来说肯定简单爆了,我抄写了好久呀,总是有一点点的小问题,还搞不明白 主要是一个静态的小米商城页面,HTML前端代码不复 ...

  8. 2021-04-30:一条直线上有居民点,邮局只能建在居民点上。给定一个有序正数数组arr,每个值表示 居民点的一维坐标,再给定一个正数 num,表示邮局数量。选择num个居民点建立num个 邮局,使

    2021-04-30:一条直线上有居民点,邮局只能建在居民点上.给定一个有序正数数组arr,每个值表示 居民点的一维坐标,再给定一个正数 num,表示邮局数量.选择num个居民点建立num个 邮局,使 ...

  9. Module not found: Error: Can‘t resolve ‘js-cookie‘

    Module not found: Error: Can't resolve 'js-cookie' 原因:没有安装js-cookie 解决:npm install -save js-cookie

  10. 使用ONE.Abp快速开发微服务,再也不用加班了

    项目背景 公司采用项目制工作方式,因此在不同项目上可能存在多个团队开发独立的代码库,但通用的基础设施却是相同的,这可能导致每个项目都需要编写相同的代码,并重复造轮子.更严重的是,每个项目都有自己的用户 ...