一.概述

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

  1.1    检查vim软件包

    下面分析vim的路径,vim软件包是哪种,vim别名:
      

  1.2   vim 基础

    vim编辑器在内存缓冲区中处理数据,如果指定的文件不存在,vim会开辟一段新的缓冲区域来编辑。如果文件存在,会将文件的整个内容读到一块缓冲区域来准备编辑。下面是指定编辑my.cnf文件,如下所示:

    [hsr@xuegod64 ~]$ vim /etc/my.cnf

    vim 编辑器有两种模式:一是普通模式,二是插入模式。当找开一个文件,进入后的是普通模式,按下 i 键就进入插入模式,要退回插入模式回到普通模式就按ESC键。
    在大文本文件中,vim有些快捷键需要知道。快捷键注意大小写,快捷键定位需在vim普通模式下进行:

按 Ctrl+F 下翻一屏。
按 Ctrl+B 上翻一屏。
按 G 移到文件底部最后一行。
按 gg 移到文件顶部第一行。
按 num G 移动到缓冲区中的第num行,例如按下14G就定位在14行。

    退出编辑器也有几种,在普通模式下按下冒号键 :,此时等待输入

按 :q  是未修改缓冲区数据,退出。
按 :q! 取消所有对缓冲区数据的修改并退出。
按 :wq 保存并退出。

  1.3   编辑数据

    这里介绍在普通模式下,vim编辑器提供了一些命令来编辑缓冲区中的数据,最后使用:wq来保存退出。注意这里编辑不是在插入模式下进行,是一些快捷方法。

命令

描述

x

删除当前光标所在位置的字符

dd

删除当前光标所在行

d$

删除当前光标所在位置至行尾的内容

u

撤销前一编辑命令

a

在当前光标后追加数据

A

在当前光标所在行行尾追加数据

  1.4 复制和粘贴

    剪切与粘贴:dd + p。 按dd 是删除一行,实际是将数据保存在单独的一个寄存器中,其实也是剪切一行, 按p 粘贴。
    复制与粘贴:y + p 。按y是复制,按$是光标所在位置至行尾的内容。按y$ 复制区域,按p粘贴。
    复制多行,可以通过按下v键,进入可视模式,光标选中的内容文本会高亮显示,如下图高亮显示区域文本有4行, 这样按下y$就复制了4行数据。如下图所示:
      

   1.5 查找

    在普通模式下,可以使用vim查找命令来轻松查找缓冲区中的数据, 按下斜线(/)键或者(?)键,输入要查找的字符,按(n)键查找下一个。如下图查找server关键词,按回车。在第二张图中高亮显示了二处含有server的关键词。
      
      

      要继续查找同一个关键词,按下n键。

Linux编程 19 编辑器(vim 用法)的更多相关文章

  1. Linux文本文件——文本编辑器Vim

    Linux文本文件——文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是所 ...

  2. linux系统编辑神器 -vim用法大全

    vim编辑器 文本编辑器,字处理器ASCII nano, sed vi: Visual Interfacevim: VI iMproved 全屏编辑器,模式化编辑器 vim模式:编辑模式(命令模式)输 ...

  3. Kali Linux的vi编辑器/vim编辑器使用方法

    转载声明:本文为转载文章 原文地址:https://www.52host.cn/blog/kali-linux-vi-editor/ Kali Linux系统的vi编辑器/vim编辑器的使用和Cent ...

  4. 【Linux】文本编辑器Vim常用操作入门

    Linux常用文本编辑器:Vi & Eamcs Vim -- Vi的升级版本 Vim 一.3种工作模式 命令行模式 (Command Mode) 插入模式 (Insert Mode) -- 键 ...

  5. Linux学习总结(19)——Linux中文本编辑器vim特殊使用方法

    1. vim比对功能 在linux的环境下 用于观察两个文件的一致性的时候我们一般用diff这个命令来比对,但是这个命令不能你特别详细的比对出 具体的位置或者行对比.这里就用到了vim的对比功能 vi ...

  6. Linux之文本编辑器Vim

    一.什么是vim vi是一种模式编辑器.vi 是Unix世界里极为普遍的全屏幕文本编辑器,几乎可以说任何一台Unix机器都会提供这套软体,其他的文本编辑器则不一定会存在,但是目前我们使用比较多的是 v ...

  7. linux的vi编辑器常用用法一览

    vi 命令用于编辑文本文件,语法: vi 文件名 vi 是一个比较强大的编辑工具,类似于windows下的notepad,但是功能要强大的多.vi分为三种模式,分别是“一般模式”,“编辑模式”,“命令 ...

  8. Linux中vi编辑器的用法

    实验一: vi编辑器的模式切换 1.       实验目标:熟练掌握vi编辑器的三种模式间切换及其特点 2.       实验操作步骤: 步骤一: 进入vi编辑器即命令模式 进入vi编辑器可以在命令终 ...

  9. Linux编程里getopt_long_only函数用法详解

    在程序中难免需要使用命令行选项,可以选择自己解析命令行选项,但是有现成的,何必再造轮子.下面介绍使用getopt_long_only和getopt_long(两者用法差不多)解析命令行选项. 程序中主 ...

随机推荐

  1. 能量模型与softmax和RBM以及正态分布的关联

    上面一篇文章中探讨了玻尔兹曼分布的起源: 在不清楚目标的真实分布,也不知道样本分布的时候,假设任意输入与输出组合都是同样可能发生的,这样是最公平,最无偏的先验. 因为无法直接统计出给定任意一种输入x, ...

  2. rsync @ERROR: auth failed on module backup 解决思路及附录rsync常见问题及解决办法

    昨晚小版本上线,使用rsync往服务器上传文件时,client报如下异常: @ERROR: auth failed on module backup rsync error: error starti ...

  3. Mac 安装配置Jenkins+github完成项目构建

    Jenkins Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.Jenkins 支持各种运行方式,可通过系统包, Docker 或者通过一个独立的 J ...

  4. 异步async与await的简单探究

    在学习.net core的过程中,到处见到异步的使用,Task.async.await随处可见.有点疑惑,就去了解了下这个过程是怎样的. 下面是一段代码,去看看是怎么执行的吧. 一.看看异步执行的方式 ...

  5. 解决vs验证控件报错” WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping”问题

    将RequiredFieldValidator的 EnableClientScript属性设置成 False 适用于大多验证控件

  6. Deployment descriptor

    部署描述符是JavaEE程序常见的一部分,部署一个Servlet 3 或以上应用程序是一件轻而易举的事.通过Servlet注解,对于不太复杂的应用程序,甚至可以部署没有描述符的Servlet/JSP应 ...

  7. Python的基本类型介绍和可变不可变

    Python的基本类型介绍 前言 做python有一段时间了,从工作开始就在不断地学习和积累.但是有时候用到一些技术点,甚至是基础知识的时候,总是会遗忘.所以,从今天开始,就在这里记录下来,不仅可以分 ...

  8. 取消Debian屏保及显示器休眠

    在产品展示场合,屏保及休眠会带来不好的体验,很多时候需要关闭掉. dpms显示器休眠设置: 开启:$ sudo xset dpms 1 1 2取消:$ sudo xset -dpms xset设置屏保 ...

  9. Python开发——13.操作系统、进程和线程

    一.操作系统 1.定义 操作系统是用来协调.管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间.操作系统运行在内核态,拥有对所有硬件的完全访问权,可以执行机器能够运行的任何指令.软件的 ...

  10. [ 10.4 ]CF每日一题系列—— 486C

    Description: 给你一个指针,可以左右移动,指向的小写字母可以,改变,但都是有花费的a - b 和 a - z花费1,指针移动也要花费,一个单位花费1,问你把当前字符串变成回文串的最小化费是 ...