当前位置:首页 > 技术之家 > linux > 正文内容

vi/vim文件查找与替换

vi/vim文件查找与替换

概述

vim有着强大的替换和查找功能,若能进行熟练的运用,可以让工作效率得到一个很大程度的提高.

语法

[addr]s/源字符串/目的字符串/[option]
  • [addr]`表示检索范围,如:

    • "1,n":表示从第1行到n行

    • "%":表示整个文件,同"1,$"

    • ".,$":表示从当前行到文件尾

    • [addr]省略时表示当前行

  • s:表示替换操作,其为substitute的缩写

  • [option] : 表示操作类型,如:

    • g:globe,表示全局替换

    • c:confirm,表示进行确认

    • p:表示替代结果逐行显示(Ctrl + L恢复屏幕)

    • i:ignore,不区分大小写

    • [option]省略时仅对每行第一个匹配串进行替换

如果在源字符串和目的字符串中出现特殊字符,如'/','<','>',','等需要前面加反斜杠\进行转义

示例

  • 将当前行第一个a替换为b

:s/a/b/
  • 将当前行的所有a替换为b

:s/a/b/g
  • 将每行第一个a替换为b

:%s/a/b
  • 将整个文件的所有a替换为b

:%s/a/b/g
  • 将1至3行的第一个a替换为b

:1,3s/a/b/
  • 将1至3行的所有a替换为b

:1,3s/a/b/g

上面是一些常用的替换,但是我们日常碰到的问题不止这么简单,这就要涉及到一些较为高级的替换操作,会涉及到转义,正则表达式相关的知识,下面是一些例子:

  • 使用#作为分隔符,此时中间出现的/不会作为分隔符,如:将当前行的字符串"a/"替换为"b/"

:s#a/#b/#
  • 找到包含字母a的行并删除

:g/a/d
  • 删除所有空行

:g/^$/d
  • 多个空格替换为一个空格

:s/ \+/ /g
  • 在正则表达式中使用和和符号括起正则表达式,即可在后面使用\1,\2等变量来访问和和中的内容,如下
    将data1 data2修改为data2 data1

:s/(\w)\+\s\+(\w)\+/\2\t\1


扫描二维码推送至手机访问。

版权声明:本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:luxd@aliyun.com,感谢支持理解。


本文链接:https://luxd.cc/post/216.html

“vi/vim文件查找与替换” 的相关文章

中国Linux源镜像站大全

中国Linux源镜像站大全

一、国内的linux源镜像站点1.企业源:阿里云开源镜像站: http://mirrors.aliyun.com/搜狐开源镜像站:http://mirrors.sohu.com/网易开源镜像站:http://mirrors.163.com/2.教育源:重庆大学:http://mirrors...

Linux服务管理

Linux服务管理

介绍服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,sshd,防火墙等),因此我们又称为守护进程。指令集1:service、chkconfig适用的服务在CentOS7.0以后,许多服务都不再适用service和chkconfig进...

U盘安装物理电脑linux系统

U盘安装物理电脑linux系统

企业中的应用一般都跑在:   物理服务器  虚拟机(云主机)  容器现 在 刚 学 习 linux 的 新 手 一 般 都 是 在 windows 系 统 中 安 装 vmware workstation,然后再安装vmware虚拟机使用与学习。但遇到物理电脑...

Linux .bin安装文件制作

Linux .bin安装文件制作

一 Linux安装文件  Linux常见的安装为tar,zip,gz,rpm,deb,bin等。我们可以简单的分为三类,  第一:打包或压缩文件tar,zip,gz等,一般解压后即可,或者解压后运行sh文件;  第二:对应的有管理工具的deb,rpm等,通常的这类安装文件可以通过第三方的命令行或UI...

Linux 学习笔记

Linux 学习笔记

[NeadPay]Linux 学习笔记一、 常用命令LINUX常用操作命令和命令行编辑快捷键终端快捷键:Ctrl + a/Home 切换到命令行开始Ctrl + e/End 切换到命令行末尾Ctrl + l 清除屏幕内容,效果等同于 clearCtrl + u 清除剪切光标之前的内容Ctrl + k...

Linux文件服务配置FTP服务

Linux文件服务配置FTP服务

前言        之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是ftp://,这篇文章就开始学习怎么配置ftp服务器供客户端进行下载文件。什么是FTP?     ...