文本编辑工具分类:

(1)全屏编辑器:

nano(字符编辑器)、vi、vim

(2)行编辑器:

sed:可以逐行改文件

vi编辑器

全名:Visual editor,linux系统自带的文本编辑工具

vim编辑器

全名:Visual editor iMproved,vi的增强版(需要单独安装)

vim工具的命令的格式

格式:

vim [选项] file

选项:

-b: 以二进制的形式打开文件

说明:

  • 如果该文件存在,文件被打开并显示内容
  • 如果该文件不存在,当编辑后第一次存盘时创建它

vim的三种模式

(1)命令模式(默认)--- vim的核心功能

命令模式作用: 查看文件内容,只能移动光标和文本粘贴/剪切

(2)插入模式(编辑模式)

作用:文本的编辑,数据交互

(3)扩展命令模式(末行模式)

作用:执行命令

三种模式的转换:



命令模式的相关操作(操作不会在屏幕显示)

退出

  • 退出--- ZQ
  • 保存退出 -- ZZ

光标移动

行内移动:

  • 跳转到行首: 数字 0 (跳转到行首的第一个字符: ^(脱字符))
  • 跳转到行尾: $

行间移动:

  • 跳转到首行: gg
  • 跳转到指定行: 行号 G
  • 跳转到最后一行: G

字符编辑

剪切光标处的字符: x(剪切)

字母大小写转换 ~

剪切光标后面的字符

num X --- 删除光标处起始的num个字符

字符替换

r -- 替换一个字符

R -- 切换到replace模式 批量替换

字符删除

d 删除命令,可结合光标跳转字符,实现范围删除

  • 从光标处开始 删除到行尾 d$
  • 从光标处开始 删除到行首 d0。 删除到非空行首 d$
  • 删除光标所在行 dd
  • 删除双引号中间的内容: di "。 删除指定引号中间的内容: di 引号的一半

字符复制

  • y -- 实现复制操作

    例如: y0 --- 复制到行首

    复制到行尾 --- y$

    整行复制 -- yy --- 多行复制 num yy

查找

/关键字 向下搜索 --- n:继续往下搜索 N: 相反方向

? 关键字 -- 向上搜索 n:向上 N:向下

撤销

u

取消撤销: ctrl + r

可视化模式

v ”-- VISUAL -- “指示,表示在可视化模式 ctrl-v 面向块,-- VISUAL BLOCK --

范例:在某些行前添加一些固定的内容:

1、先将光标移动到指定的第一行的行首

2、输入ctrl+v 进入可视化模式

3、向下移动光标,选中希望操作的每一行的第一个字符

4、输入大写字母 I 切换至插入模式

5、输入 #

6、按 ESC 键

I 大写I 表示在当前光标所在行的行首输入

扩展的命令模式(末行模式)相关操作

保存退出

w q x !(表示强制)

位置定界

$ --- 最后一行

. --- 当前行

% -- 表示整个文件

num1,num2 -- 第几行到第几行(单独num -- 表示第几行)

例如删除第十行--十五行: 10,15 d

字符操作

删除 d

撤销 u

复制 y

set命令

行号显示:

set num

取消: set nonu

自动缩进:

set autoident 简写: set ai

取消: set noai

复制保留格式:

set paste

取消 set nopaste

显示不可见字符:

set list -- 可以用来区分tab键和空格键

^I:表示tab键 $:表示回车

高亮搜索(默认就是高亮):

set hlsearch

取消高亮简写: set nohl

更改文本格式:

set ff=unix|dos --- linux格式或者unix格式

搜索替换

s/xx/yy/ --- 斜线是分隔符,也可以使用其他的字符,比如@#%等符号

插入模式相关操作:

进入插入模式以后进行正常的数据交互

vim的配置文件

/etc/vimrc --- 针对所有人都有效

当前用户家目录: .vimrc --- 默认没有,需要手动建立 当前用户生效

其他文本处理工具

文本处理工具-vim编辑器的常见用法的更多相关文章

  1. Linux文本编译工具VIM详解

    Linux文本编译工具VIM详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.VIM概述 1>.vim简介 >.vi: 全称Visual editor,即文本编辑 ...

  2. vim编辑器的常见使用功能

    Vim是一个类似于vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性. 掌握简单的vim命令可以大大提高我们编辑文档效率,在装有vim编辑器的linux系统终端输入vim ...

  3. vim编辑器的基本用法

    使用linux时候,个人比较喜欢用vim编辑器,对文本进行操作. 为了方便我使用vim编辑器,特地搜索了一下教程记录于此,防止自己忘记了. 下面就是一些vim使用的基础操作: 使用vim打开软件 vi ...

  4. linux添加vim编辑器和一些用法

    vim.tar文件在自己的百度云盘里面,linux目录下 上传vim.tar文件,解压 vim编辑文件的一些快捷方式: n+t打开文件所在目录,显示在左侧 ctrl+w+l 切换到右边文件ctrl+w ...

  5. 4.Vim编辑器与Shell命令脚本

    第4章 Vim编辑器与Shell命令脚本 章节简述: 本章首先讲解如何使用Vim编辑器来编写.修改文档,然后通过逐个配置主机名称.系统网卡以及Yum软件仓库参数文件等实验,帮助读者加深Vim编辑器中诸 ...

  6. Linux系统的vim编辑器的配置文件的初步说明

    vim 编辑器的基本说明 vi编辑器的功能类似于Windows下的记事本,只能编辑普通文本,而vim编辑器则相当于Windows下的notepad++等高级编辑器,提升了代码开发效率. 将vi命令默认 ...

  7. 只有文本编辑器才是王道, 什么ide都是evil的浮云, 看看linus linux的内核开发工具vim emacs

    只有文本编辑器才是王道, 什么ide都是evil的浮云, 看看linus linux的内核开发工具vim emacs [ide is evil] (http://i.cnblogs.com/EditP ...

  8. Linux之浅谈VIM常见用法及原理图

    本次归纳以强大的VIM文本处理工具常见用法去展开论述. 文本编辑种类:       行编辑器:sed       全屏编辑器:nano,vi        vim - Vi改进 其他编辑器:     ...

  9. 【vim编辑器】文本编辑器vim

    在Linux系统中一切皆文件.配置一个服务就是在修改其配置文件的参数 一.Vim编辑器 vim是我们在Linux系统中常用的文件编辑命令,也可以使用其简写vi.其边际模式有三种:命令模式,输入模式,行 ...

随机推荐

  1. (2020行人再识别综述)Person Re-Identification using Deep Learning Networks: A Systematic Review

    目录 1.引言 2.研究方法 2.1本次综述的贡献 2.2综述方法 2.3与现有综述的比较 3.行人再识别基准数据集 3.1基于图像的再识别数据集 3.2基于视频的再识别数据集 4.基于图像的深度再识 ...

  2. LVM从VG中删除PV及删除未知PV

    当我们的硬盘发被删除掉了,我们的PV卷会变成[unknown] 一.首先我们要备份我们的文件,然后再删除lv分区 二. VG中去除PV unknown device:

  3. .NET MAUI RC2 发布,支持 Tizen 平台

    在.NET多平台应用程序UI(.NET MAUI)RC1之后仅两周,微软已经发布了RC2,并以新的Tizen支持为亮点..NET MAUI是微软对Xamarin.Forms的演变,因为它除了iOS和A ...

  4. 浅尝Spring注解开发_自定义注册组件、属性赋值、自动装配

    Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含自定义扫描组件.自定义导入组件.手动注册组件.自动注入方法和参数.使用Spring容器底层组件等 配置 @Confi ...

  5. /proc/meminfo 解释

  6. 如何对用户的绑定的身份证真实性进行实名认证(java)

    现在随着对用户实名制的要求,因此用户提交的身份证信息经查需要检查是否为真实信息,我们需要对用户提交的身份证信息进行核验,具体操作步骤如下: 第一步 到认证平台注册账号:云亿互通--实名认证服务 (yu ...

  7. vue - Vue组件化编程

    今天是对vue组件化的一个理解,最主要的单文件组件,然后就可以脚手架的学习了,本来昨晚就该上传的,但是用的那个上传博客园的Python脚本不行了,换了一个新的. 组件化让我越来越感觉到框架的力量了 一 ...

  8. 新作!分布式系统韧性架构压舱石OpenChaos

    摘要:本文首先以现今分布式系统的复杂性和稳定性的需求引出混沌工程概念,并阐述了OpenChaos在传统混沌工程上的优化与创新. 背景 随着Serverless,微服务(含服务网格)与越来越多的容器化架 ...

  9. Vue2手写源码---响应式数据的变化

    响应式数据变化 数据发生变化后,我们可以监听到这个数据的变化 (每一步后面的括号是表示在那个模块进行的操作) 手写简单的响应式数据的实现(对象属性劫持.深度属性劫持.数组函数劫持).模板转成 ast ...

  10. unity---脚本创建按钮

    脚本创建按钮 新建文件夹 Resources 方便引用图片 在文件Resources中新建Images,并且下载一个图片 没有图片,按钮内容无法显示 图片需要处理一下 Textrue Type 改为 ...