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. 智慧机房3D可视化技术解决方案

    随着夏季气温越来越高,机房内大量设备同步工作时,难免使机房内温度飙升. 机房温度每升高10℃,计算机的可靠性就下降25% 磁盘磁带也会因热涨效应造成记录错误 计算机的时钟主频在温度过高都会降低 UPS ...

  2. 基于.NetCore开发博客项目 StarBlog - (13) 加入友情链接功能

    系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...

  3. this关键字、static关键字、方法的调用

    1.带有static关键字的方法,不可使用this关键字.因为其调用方法为类名.方法名(建议这种方式,调用不需要对象的参与),不存在对象. 2.实例方法调用必须有对象的存在,先创建对象,通过引用.的方 ...

  4. Python自动化办公:27行代码实现将多个Excel表格内容批量汇总合并到一个表格

    序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去.还好我会Python,分分钟 ...

  5. 理解 Python 的 for 循环

    在本篇博客中,我们将讨论 Python 中 for 循环的原理. 我们将从一组基本例子和它的语法开始,还将讨论与 for 循环关联的 else 代码块的用处. 然后我们将介绍迭代对象.迭代器和迭代器协 ...

  6. Python 中多线程共享全局变量的问题

    写在前面不得不看的一些P话: Python 中多个线程之间是可以共享全局变量的数据的. 但是,多线程共享全局变量是会出问题的. 假设两个线程 t1 和 t2 都要对全局变量g_num (默认是0)进行 ...

  7. 在docker中打开redis 客户端 cli

    首先交互方式进入redis容器 docker exec -it redis /bin/bash 随后运行客户端 redis-cli

  8. ACM组合计数入门

    1 排列组合 1.1 排列 \[A_n^m=n(n-1)(n-2)\cdots(n-m+1)=\frac{n!}{(n-m)!} \] 定义:从 n 个中选择 m 个组成有序数列,其中不同数列的数量. ...

  9. (数据科学学习手札140)详解geopandas中基于pyogrio的矢量读写引擎

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,前不久我在一篇文章中给大家分享 ...

  10. Qt+ECharts开发笔记(三):ECharts的柱状图介绍、基础使用和Qt封装Demo

    前言   上一篇成功是EChart随着Qt窗口变化而变化,本篇将开始正式介绍柱状图介绍.基础使用,并将其封装一层Qt.  本篇的demo实现了隐藏js代码的方式,实现了一个条形图的基本交互方式,即Qt ...