vim 替换文本指令
在日常项目开发中,如果经常在linux服务器上写脚本或者直接用vim进行业务开发的会遇到替换文本的情况,会使用vim的文本替换指令。参考一些专业网站的一些总结,将一些常用的vim替换指令记一下,希望对大家有帮助:
1. 替换当前行中的内容: :s/from/to/ (s即substitude)
:s/from/to/ : 将当前行中的第一个from,替换成to。如果当前行含有多个
from,则只会替换其中的第一个。
:s/from/to/g :将当前行中的所有from都替换成to。
:s/from/to/gc :将当前行中的所有from都替换成to,但是每一次替换之前都
会询问请求用户确认此操作。
注意:这里的from和to都可以是任何字符串,或者是正则表达式。
2. 替换某一行的内容::33s/from/to/g
:.s/from/to/g : 在当前行进行替换操作。
:33s/from/to/g : 在第33行进行替换操作。
:$s/from/to/g : 在最后一行进行替换操作。
3. 替换某些行的内容: :10,20s/from/to/g
:10,20s/from/to/g : 对第10行到第20行的内容进行替换。
:1,$s/from/to/g : 对第一行到最后一行的内容进行替换(即全部文本)。
:1,.s/from/to/g : 对第一行到当前行的内容进行替换。
:.,$s/from/to/g : 对当前行到最后一行的内容进行替换。
:'a,'bs/from/to/g : 对标记a和b之间的行(含a和b所在的行)进行替换。
其中a和b是之前用m命令所做的标记。
4. 替换所有行的内容: :%s/from/to/g
:%s/from/to/g : 对所有行的内容进行替换。
5. 替换命令的完整形式: :[range]s/from/to/[flags]
5.1 s/from/to/
把from指定的字符串替换成to指定的字符串,from可以是正则表达式。
5.2 [range]
有以下一些表示方法:
不写range : 默认为光标所在的行。
. : 光标所在的行。
1 : 第一行。
$ : 最后一行。
n : 第n行。
'a : 标记a所在的行(之前要使用ma做过标记)。
.+1 : 当前光标所在行的下面一行。
$-1 : 倒数第二行。(这里说明我们可以对某一行加减某个数值来
取得相对的行)。
n,m : 第n~m行。
1,$ : 第1行 到 最后一行。
1,. : 第1行 到 当前行。
.,$ : 当前行 到 最后一行。
'a,'b : 标记a所在的行 到标记b所在的行。
% : 所有行(与 1,$ 等价)。
?chapter? : 从当前位置向上搜索,找到的第一个chapter所在的行。(
其中chapter可以是任何字符串或者正则表达式。
/chapter/ : 从当前位置向下搜索,找到的第一个chapter所在的行。(
其中chapter可以是任何字符串或者正则表达式。
注意,上面的所有用于range的表示方法都可以通过 +、- 操作来设置相对偏
移量。
5.3 一些参数说明
无 :只对指定范围内的第一个匹配项进行替换。
g : 对指定范围内的所有匹配项进行替换。
c : 在替换前请求用户确认。
e : 忽略执行过程中的错误。
注意:上面的所有flags都可以组合起来使用,比如 gc 表示对指定范围内的
所有匹配项进行替换,并且在每一次替换之前都会请用户确认。
vim 替换文本指令相关推荐
- vim替换字符串带斜杠_VI中的查找和替换
本文见介绍linux vi命令替换的使用. vi/vim 中可以使用 :s 命令来替换字符串.以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(linux vi命令真是强大啊,还有很多需要学 ...
- VIM妙用及linux使用技巧(包括vim插件管理器、指令与键盘映射、打开多个文件、奇偶删除行、vim替换等)
前言 vim 是个非常高效.非常好用的工具,很多人一旦开始使用 Vim 之后就再也无法自拔.然而, Vim 仍然有其自身缺陷,对于普通用户来说,很难在入门的时候就体会到Vim的所谓高效性,同时,为了展 ...
- centos7 vim查找_如何在 Vim/Vi 中快速查找和替换文本内容
Vim 是 Vi 多模式命令行编辑器的加强版,通常默认的Unix或Linux系统中都默认自带Vi命令编辑器.当然,为了更好的体验,如果系统默认没有安装Vim,建议安装Vim. 通过本文的讲解,你将学会 ...
- Linux vim 文本替换 %s/原文/替换文本/g
语法 ESC:%s/origanl/new/g %s 表示替换文本. origan 表示原文 new 表示新的内容 /g 表示全文替换,如果仅替换第一个则不需要/g 需要注意如果要替换的内容中包含特殊 ...
- Linux APT VIM 的一些指令
APT APT下载工具,可以实现软件自动下载.配置.安装二进制或源码功能. APT采用客户端/服务器模式. sudo apt-get update 更新软件 sudo apt-get check 检查 ...
- linux vim编辑文本是 m,Linux编辑器之VIM
VIM是Linux功能最为强大的编辑器,它是由Unix下传统的文本编辑器VI发展而来的,VI M- Vi IMproved,VI的增强版,有彩色和高亮等特性,VIM和VI的区别可参看vi_diff.t ...
- php tr 用法,Linux_Linux系统中tr命令删除和替换文本字符的基本用法,通过使用 tr,您可以非常容易 - phpStudy...
Linux系统中tr命令删除和替换文本字符的基本用法 通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个 ...
- Vim入门-常用指令
更多在vim在线手册 Vim基本操作 1.1 Vim中的六种基本模式 1.1.1 Vim模式介绍 Vim具有6种基本模式和5种派生模式,我们这里只简单介绍下6种基本模式: · 普通模式(Normal ...
- Linux下使用Vim粘贴文本错乱问题解决
Linux下使用Vim粘贴文本错乱问题解决 参考文章: (1)Linux下使用Vim粘贴文本错乱问题解决 (2)https://www.cnblogs.com/wangxiaobei2019/p/12 ...
最新文章
- Handler、Looper与MessageQueue源码分析
- 名人尿炕被人发现后怎么办?
- 【设计模式】接口隔离原则
- mysql中的字典项是啥_常见数据库设计(1)——字典数据
- ElementTree中的getchildren and getiterator
- 【CSON原创】HTML5字体动态粒子效果发布
- c 调用openoffice word转pdf_批量 Word 转 PDF 方法
- IdentityServer(14)- 通过EntityFramework Core持久化配置和操作数据
- 27. Element nodeType 属性
- python--Django从创建一个项目说起
- Dubbo源码解析-Dubbo协议解析
- srs信道估计_SRS 上行信道质量测量
- 邮箱邮件安全问题有哪些?如何做邮件安全宣传?
- 52单片机定时器0-2实现1ms定时
- ios15.6RC-15.7.1系统降级iOS14,适用于checkm8机型
- python中bytes的用法_Python bytes类型及用法详解
- ZOJ4105 Abbreviation
- c++之getopt函数的使用
- 四年的女友......
- CentOS7+运行/停止Java后台程序,问题处理