Linux之vim编辑器使用

vim三种模式:命令模式,插入模式,退出模式

移动光标操作

左移动一个字符: 按 h 键
右移动一个字符:按 l 键
下移动一行:按 j 键
上移动一行:按 k 键
移动至行首:按 ^ 键
移动至行尾:按 $ 键
移动至文件顶部:按 H 键(仅移动到当前这一屏顶部)
移动至文件顶部:按 gg 键
移动至文件尾部:按 L 键(仅移动到当前这一屏尾部。)
移动至文件尾部:按 G 键
移动至文件中部:按 M 键
移动光标到指定行:输入:数字(输入:set nu 检查是否可以切换到指定行) 向上滚屏:Ctrl+y
向下滚屏:Ctrl+e
向上滚动半屏:Ctrl+u
向下滚动半屏:Ctrl+d
向上滚动整屏:Ctrl+b
向下滚动整屏:Ctrl+f

插入文本操作

在光标右边插入文本:按 a 键
在光标左边插入文本:按 i 键
在光标所在行的下一行插入新行:按 o 键
在一行的结尾处添加文本:按 A 键
在行首插入文本:按 I 键
在光标所在行的上一行插入新行:按 O 键

撤销和重复操作

撤消上一个操作:按 u 键
撤消光标所在行的更改:按 U 键
重复操作:输入.键

删除文本

删除一行:按 dd 键(相当于剪切)
删除第 n 行到第 m 行的内容:n,md

复制和粘贴

复制一行内容:按 yy 键
粘贴:按 p 键
将 start 到 end 行的内容复制到 dest 行以下:Start,end copy dest
将 start 到 end 行的内容移动到 dest 行以下:Start,end m dest

查找和替换

向前查找字符串:/string
向后查找字符串:?string
继续上一次查找:n
以与上次相反的方向查找:shift + n
替换当前行::s/字符串 1/字符串 2
在全局中替换字符串 1 为字符串 2::%s/字符串 1/字符串 2/g
替换 n 到 m 行中的字符 1 为字符串 2::n,ms/字符串 1/字符串 2/g

保存和退出

保存退出: :wq或:x
不保存退出::q!
保存退出,对拥有者忽略只读权限::wq!
另存为::w filename

设置

自动缩进::set autoindent
语法高亮::syntax enable或syntax on
显示行号::set nu!
查找结果高亮显示::set hlsearch
自动换行::set warp
忽略大小写::set ignorecase
取消高亮显示::nohl

可视化模式

开始字符高亮选定:v
开始行高亮选定:V
ctrl+v列方向高亮选定
高亮显示的文本能被删除d,拷贝y,替换c,搜索/替换:s/old/new等 #多行注释
1,ctrl+v进入列编辑模式
2,向下或向上移动光标
3,把需要注释的行的开头标记起来
4,然后按大写的I(行首插入)
5,再插入注释符,比如"#"
6,再按ESC,就会全部注释了 #删除多行注释:
1. 首先按esc进入命令行模式下,按下Ctrl + v, 进入列模式
2. 选定要取消注释的多行
3. 按下“x”或者“d”;注意:如果是“//”注释,那需要执行两次该操作,如果是“#”注释,一次即可

多窗口模式

#在单个vim屏幕中查看多个文档
ctrl-w,s:横向分割屏幕
ctrl-w,v:纵向分割屏幕
ctrl-w,方向键:在窗口间移动 退出模式的指令只影响当前窗口
:sp file在同一个窗口打开其他文件
:help windows:显示更多窗口命令 #vim实现文件另存为的功能
:w new_filename
#vim截取部分内容保存到其他文件
:start,endw file

vim编辑器使用详解的更多相关文章

  1. Linux vim编辑器使用详解

    在Linux中,主要编辑器为vi或者vim,本文围绕vim做简单的讲解说明: Linux默认自带vi(vim)编辑器,其程序包为: [root@xuegod163 ~]# rpm -qf `--1.8 ...

  2. VIM 编辑器 -使用详解记录

    1.什么是 vim? Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但 ...

  3. VIM 编辑器操作详解

    1 vim 使用介绍 1.1 vim 安装 # CentOS 安装: yum install -y vim # Ubuntu 安装: sudu apt-get install vim 安装完成后,可使 ...

  4. Linux Shell编程与编辑器使用详解

    <Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...

  5. Linux vim常见使用详解

    教你用Vim编辑器 1.Vim编辑器基本使用方法 光标移动 查找/替换 插入模式 复制/粘贴 复制/粘贴 2.vim打开时的警告信息 当使用vim打开一个文件时,会同时在该目录下创建个.filenam ...

  6. Shell 基础 -- 流编辑器 sed 详解

    一.流编辑器 sed 与命令 sed Linux 中,常使用流编辑器 sed 进行文本替换工作.与常使用的交互式编辑器(如vim)不同,sed 编辑器以批处理的方式来编辑文件,这比交互式编辑器快得多, ...

  7. vim/vi 命令详解

    在工作中,要对服务器上的文件进行的修改,可以使用ssh远程登录到服务器上,并且使用vi进行快速的编辑即可,在没有图形界面的环境下,要编辑文件,vi是最佳选择! vi命令是Linux中最经典的文本编辑器 ...

  8. Linux系统中的vi/vim指令【详解】

    vi是Unix世界里极为普遍的全屏幕文本编辑器,vim是它的改进版本Vi IMproved的简称.几乎可以说任何一台Unix机器都会提供这套软件. 只要简单的在Shell下执行vi就可以进入 vi 的 ...

  9. vim 标记 mark 详解 (转载)

    http://www.cnblogs.com/jianyungsun/archive/2011/02/14/1954057.html Vim 允许你在文本中放置自定义的标记.命令 "ma&q ...

随机推荐

  1. 手把手教你实现一个Vue无限级联树形表格(增删改)

    前言平时我们可能在做项目时,会遇到一个业务逻辑.实现一个无限级联树形表格,什么叫做无限级联树形表格呢?就是下图所展示的内容,有一个祖元素,然后下面可能有很多子孙元素,你可以实现添加.编辑.删除这样几个 ...

  2. 论文解读(LG2AR)《Learning Graph Augmentations to Learn Graph Representations》

    论文信息 论文标题:Learning Graph Augmentations to Learn Graph Representations论文作者:Kaveh Hassani, Amir Hosein ...

  3. java基础知识面试总结-部分

    前言 在平时的工作学习中,自己对微服务和springboot基础理论知识关注比较少,在面试中对于面试官的问题,很多基本都不能够达到精准,全面:现将自己面试中的问题做以总结: 1.谈谈你对微服务架构的认 ...

  4. 查看mysql安装目录、安装路径

    show variables like "%CHAR%" 我是在Navicat中输入这个命令后查的.

  5. 实践GoF的23种设计模式:装饰者模式

    摘要:装饰者模式通过组合的方式,提供了能够动态地给对象/模块扩展新功能的能力.理论上,只要没有限制,它可以一直把功能叠加下去,具有很高的灵活性. 本文分享自华为云社区<[Go实现]实践GoF的2 ...

  6. NC224938 加减

    NC224938 加减 题目 题目描述 小红拿到了一个长度为 \(n\) 的数组.她每次操作可以让某个数加 \(1\) 或者某个数减 \(1\) . 小红最多能进行 \(k\) 次操作.她希望操作结束 ...

  7. 虚拟机安装Centos7.5详细教程

    VMware15.5虚拟机安装CentOS7.5详细教程   (前言)软件下载   需要VMware15.5软件和密匙的小伙伴可以从此地址下载:https://pan.baidu.com/s/1A8H ...

  8. 方法的调用和JDK9的JShell简单使用

    方法在定义完毕后,方法不会自己运行,必须被调用才能执行,我们可以在主方法main中来调用我们自己定义好的方法.在主方法中,直接写要调用的方法名字就可以调用了 public static void ma ...

  9. Java学习第二周

    这一周观看了黑马程序员毕向东的教学视频学习了数组的创建:数组元素的使用及遍历,类的声明,成员方法的声明,构造器的声明 数据类型[] 数组名 = new 数据类型[长度];数据类型[] 数组名 = {数 ...

  10. git.exe pull --progress -v --no-rebase "origin" master

    git.exe pull --progress -v --no-rebase "origin" master remote: You do not have permission ...