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. 3.shell脚本循环试题

    shell脚本循环试题 1.计算从1到100所有整数的和 #!/bin/bash a=0 for i in {1..100} #1到100 #每次循环变量i的值也为循环次数 do a=$[ $a + ...

  2. .NET6 开源之JSON 2 SQL (JORM框架)

    什么是JORM框架? 全称 :Json  Object Relational Mapping   ,它是通过JSON 对象 去实现数据库的一个关系映射 ,我理想中完整的JORM包含功能有 ·1.表权授 ...

  3. Spring框架系列(3) - 深入浅出Spring核心之控制反转(IOC)

    在Spring基础 - Spring简单例子引入Spring的核心中向你展示了IoC的基础含义,同时以此发散了一些IoC相关知识点; 本节将在此基础上进一步解读IOC的含义以及IOC的使用方式.@pd ...

  4. MES 系统介绍

    MES系统是一套面向制造企业车间执行层的生产信息化管理系统.MES可以为企业提供包括制造数据管理.计划排程管理.生产调度管理.库存管理.质量管理.人力资源管理.工作中心/设备管理.工具工装管理.采购管 ...

  5. vue大型电商项目尚品汇(后台终结篇)day06 重磅!!!

    自此整个项目前后台,全部搭建完毕. 今天是最后一天,内容很多,而且也比较常用,一个图标类数据可视化,一个后台的权限管理,都是很经典的类型. 一.数据可视化 1.简介 专门的一门学科,有专门研究这个的岗 ...

  6. NC201605 Bits

    NC201605 Bits 题目 题目描述 Nancy喜欢做游戏! 汉诺塔是一个神奇的游戏,神奇在哪里呢? 给出 \(3\) 根柱子,最开始时 \(n\) 个盘子按照大小被置于最左的柱子. 如果盘子数 ...

  7. mysql拆分字符串做条件查询

    mysql拆分字符串作为查询条件 有个群友问一个问题 这表的ancestors列存放的是所有的祖先节点,以,分隔 例如我查询dept_id为103的所有祖先节点,现在我只有一个dept_id该怎么查 ...

  8. SuperSocket 1.6 创建一个简易的报文长度在头部的Socket服务器

    我们来做一个头为6位报文总长度,并且长度不包含长度域自身的例子.比如这样的Socket报文000006123456. 添加SuperSocket.Engine,直接使用Nuget搜索SuperSock ...

  9. 前 K 个高频元素问题

    前 K 个高频元素问题 作者:Grey 原文地址: 前 K 个高频元素问题 题目描述 LeetCode 347. Top K Frequent Elements 思路 第一步,针对数组元素封装一个数据 ...

  10. VIM编辑器的宏操作

    这两天看到一个小练习,要求如下: 在GVIM下,将下面这张图的内容 改成下面这样 并且指出,要用批量操作的方式,不能一行一行的键入 其实第一反应是利用正则表达式来操作,但是让用正则表达式以外的操作方式 ...