导航:首页 > 程序命令 > vim替换命令详解

vim替换命令详解

发布时间:2023-05-19 12:54:39

A. vim 替换 区分大小写

题主你好,

vim下大小写默认就是敏感的, 也就是说默认情况下历迟无论是 查找 还是 替换 都是区分大小写的.

假设我的vim中有数据:

另一种是先全局设置忽略大小写, 然后再用替换命令:

:set ignorecase

:%s/hello/hi/ //注意这个替换后面没有小尾巴i

截图就不上了, 结果和上面最后一幅图是一样的.

-----

扩展阅读:

建议题主改一下提问方法, 你这样提问太简单了, 你写的这么简单有的问题可能答题者直接就能明白你想表达的意思, 但有的问题可能会让答题者产生歧义, 不知道你想要的结果到底是什么. 我站在一个答题者的角度来说一下我喜欢什么样的问题啊. 直接把你的数据给出来, 或你的具体情况描述出来, 最好是配图,不配图的话描述清楚就好, 然后说一下你想要的结果是什么(也就是说针对某个具体问题你想要的结果). 你提完问题之后可以换位思考一下, 假设自己是一个答题者, 觉得看到这道题会不会一下就明白什么意思, 如果换位思考后, 你觉得这个问题提的很清晰, 目的很明确那这就是个好问题, 被别人回答的概率也会大很多. 你可以想一下, 如果你作为一个答题者看到别人的提问, 一眼都看不明白啥意思, 或者说看起来有歧义, 相信多数人都会直接略过这道题继续向下看了, 这样的提问被回答的概率就小很多.

最近看到了好多的提问, 像"linux查看端口命令", "vim详解"等等, 我觉得这种问题真的不好肢此李答, 像"linux查看端口命令"来说吧, 最常用的应该是netstat了, 但linux下基本上很少有输入一个命令就能得到你想要的结果的, 每个命令都有一堆参数, 需要看你的实际情况来选用合适的参数, 也就是说只给你一个命令基本上是没有意义的. 再说"vim详解"这种问题, 不管是vim编辑器详解也好, 某个命令的详解也好, 站在我的角度来看, 除非是我看到问题的那会儿特别希望把这个命令系统的掌握, 而且当扒搜时头脑特别的清醒, 否则我是不会理这样的问题的. 而且就算有人回答你了也可能是从网上随便过来的. 为啥呢? 因为基本上linux中的每个命令都有很多参数, 把每个参数和具体的注意点都给你解释清楚那要大把的时间和精力, 一般人不会这么干.

所以, 最好的问题方法就是具体问题具体分析, 把你当前的情况说明白, 再把想要的结果说清楚足矣.

写在最后: 题主不要觉得我写的啰嗦, 只是最近看到这样的问题太多了. 如果题主觉得这段话有帮助就看看, 觉得没帮助忽略就好, 感谢!

-----

希望可以帮到题主, 欢迎追问.

B. linux在vim下怎么批量替换或者注释

方法一 块选择模式

插入注释:

用v进入virtual模式



在10 - 20行添加 # 注释

:10,20s/^/#/g

在10 - 20行删除 # 注释

:10,20s/^/#/g

注意例子中正则的分割符使用的是相反的符号,如果匹配// 那么使用 #作分隔符这样不需要对/作转义处理,节省输入次数。

C. 如何在 Vim/Vi 中快速查找和替换文本内容

Vim 是 Vi 多模式命令行 编辑器 的加强版,通常默认的Unix或Linux系统中都默认自带Vi命令编辑器。当然,为了更好的体验,如果系统默认没有安装Vim,建议安装Vim。

通过本文的讲解,你将学会如何在Vim/Vi中快速的使用命令进行查找替换文本。

首先,启动Vim/Vi编辑器,处于正常模式下。如果你不确定是否处于正常模式下,这时你可以按“ESC”,编辑器就会进入正常模式。

替换命令的格式一般如下:

该命令表示在[range]的每一行中搜索{pattern},并将其替换为{string}。 [count]是一个乘以命令的正整数。

如果没有给出[range]和[count],则仅替换当前行中找到的模式。

例如,要搜索当前行中字符串“foo”的首次出现,并将其替换为“bar”,可以使用:

要替换当前行中搜索到的所有内容,可以添加 g 标志:

如果想搜索和替换整个文件中的匹配内容,使用百分比字符 % 作为范围。此字符指示从文件第一行到最后一行的范围:

如果省略 {string} 部分即上面的bar,则将其视为空字符串,相当于将匹配到的内容替换为空,既删除匹配到的内容。

以下命令删除当前行中字符串“foo”的所有实例:

当然,除了作为分隔符外,还可以使用任何其他非字母数字单字节字符,而不是斜杠字符( / )。例如:

要确认每个替换,可以使用 c 标志。

替换前会询问:

按 y 替换匹配项,或按l替换匹配项并退出。 按 n 跳过当前匹配,按 q 或 Esc 退出替换。 a 选项替换匹配项和所有剩余匹配项。

若要向下滚动屏幕,请使用 CTRL + Y ,向上滚动,请使用 CTRL + E 。

还可以使用 正则表达式 作为搜索模式,例如:

^ 符号表示与行首匹配, .* 表示匹配任意数量的字符。

默认情况下,搜索操作区分大小写;搜索“FOO”将与“FOo”不匹配。

要忽略搜索模式的案例,请使用 i 标志:

另一种强制忽略案例的方法是在搜索模式后添加 \c 。例如, /Linux\c 执行忽略大小写搜索。

当未指定范围时,替换命令仅在当前行中操作。

范围可以是一行,也可以是两行之间的范围。 行说明符之间可用英文 , 分隔 ; 字符分割。 可以使用绝对行号或特殊符号指定范围。

例如,要在从第3行到第10行的所有行中将所有出现的“ foo”替换为“ bar”,可以使用:

该范围是包含范围的,这意味着该范围包括第一行和最后一行。

. 字符表示当前行, $ 美元符号表示最后一行。 要在从当前行到最后一行的所有行中替换“ foo”:

也可以使用“ +”或“-”符号来设置行说明符,其后是从前一个行号添加或减去的数字。 如果省略符号后的数字,则默认为1。

例如,从当前行和接下来的四行开始,用“ bar”替换每个“ foo”,键入:

替代命令将模式作为字符串而不是整个单词查找。 例如,如果您正在搜索“ gnu”,则搜索查找匹配“ gnu”嵌入在较大单词(例如“cygnus” 或 “magnum”)中的情况。

要搜索整个单词,请键入\ <标记单词的开头,输入搜索模式,键入>标记单词的结尾:

例如,要搜索单词“ foo”,可以使用 \<foo\> :

Vim会跟踪您在当前会话中运行的所有命令。

要浏览历史记录以查找先前的替代命令,请输入 :s 并使用向上或向下箭头键查找先前的替代操作。 要运行该命令,只需按Enter。 您也可以在执行操作之前编辑命令。

注释行(在行前添加#)从5到20:

取消注释行从5到20,恢复以前的更改:

将“苹果”,“橙色”和“芒果”的所有实例替换为“水果”:

删除每行末尾的空格:

搜索和替换在Vim中是一个非常强大的功能,学会使用它能使您可以快速更改文本,提高自己的工作效率。

欢迎通过查看我个人介绍信息,私信跟我沟通!

D. centos里vi命令里怎么替换

替换当前行第一个OLD为NEW
:s/OLD/NEW

替换当前行所以OLD为NEW
:s/OLD/NEW

退换当前文件中的所有OLD为NEW
:%s/OLD/NEW/g

除了上述的几种替换模式,还可以指定两个行号,把他们之间所有的OLD替换称NEW,
语法为,第一个#号表示开始行,第二个#号表示截止行
:#,#s/OLD/NEW/g

替换第三行到第五行所有OLD为NEW
:3,5s/OLD/NEW/g

其中两个行号也可以只出现一个,省略的那个表示为光标所在的行,例如:

:,5s/OLD/NEW/g 把光标所在行到第5行所有OLD替换为NEW

:5,s/OLD/NEW/g 把第5行到光标所在行所有OLD替换为NEW

另外最后一行可以使用$表示,所以
:%s/OLD/NEW/g 等价于 :1,$s/OLD/NEW/g

E. vim中如何查找和替换字符串

一、 字符串的查找
1. vim 中用 / 和 ? 来查找字符串,两者的区别是:
/string 会高亮显示光标后匹配的第一个字符串,回车后光标移到该字符串的第一个字母;
string 会高亮显示光标前匹配的第一个字符串,回车后光标移到该字符串的第一个字母。
在回车之后,按n键同方向转到下一个匹配的字符串,按N键反方向转到上一个匹配的字符串。
2. 用命令 :set ic 和 :set noic 来分别设置查找时不区分和区分大小写。
如果查找特殊字符,如 ^、$、*、/ 和 .,需要在前面加 \ 来转义。
二、字符串的替换
1. vim 中可用 :s 命令来替换字符串,具体如下:
:s/str1/str2/ 替换当前行第一个 str1 为 str2
:s/str1/str2/g 替换当前行中所有 str1 为 str2
:m,ns/str1/str2/ 替换第 n 行开始到最后一行中每一行的第一个 str1 为 str2
:m,ns/str1/str2/g 替换第 n 行开始到最后一行中所有的 str1 为 str2
(注:m和n 为数字,若m为 .,表示为当前行开始;若n为$,则表示到最后一行结束)
如果使用 # 作为分隔符,则中间出现的 / 不会作为分隔符,比如:
:s#str1/#str2/# 替换当前行第一个 str1/ 为 str2/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/
2. 其他:%s/str1/str2/(等同于 :g/str1/s//str2/) 替换每一行的第一个 str1 为 str2
:%s/str1/str2/g(等同于 :g/str1/s//str2/g 和 :1,$ s/str1/str2/g ) 替换文中所有 str1 为 str2
从替换命令可以看到,g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索

F. vim替换一个单词怎么做

用命令去替改孝换:

:%s/oldword/newword/g

%是指当前文件的缺嫌所有行

s是搜索(search)

把oldword替换成newword

g是指每行所有匹配的都替换,如果没有加g,则只替换每行第一个匹配的字符伏歼手串。

不明白的地方欢迎追问!!!

G. vim模式与模式切换vim命令模式

vim有三种模式,本文介绍VIM模式与vim模式切换的方法。

vim命令 模式, 编辑模式 , 尾行模式 和文本编辑命令。

Vim编辑模式插入字符,行尾、行首插入,删除一个字符和删除整行命令,Vim复制和粘贴命令,vim替换输入以及撤销和反撤销命令,Vim保存和另存为文件,显示vim当前编辑文件名。

我们使用vim编辑器的常用文件操作主要是:插入、删除、复制、粘贴、替换、撤销、保存、另存为。

在介绍Vim中的上述基本文件操作命令前,需要先介绍下vim的操作模式。因为vim的各种对文件操作命令需要在不同操作模式下使用。

一、Vim三种操作模式

Vim编辑器一共有3种模式,分别为 命令模式 (默认)、编辑模式、尾行模式。这3种模式的转换关系如下图所示。

vim三种模式

1 命令模式(command mode)

命令模式是Vim的默认操作模式,当使用vim命令打开一个文件时,默认进入的就是命令模式。不管用户处于何种模式,只要按下Esc键就可使进入命令行模式

2 编辑模式(input mode)

只有在vim编辑模式下,才能将键盘键入的内容输入到当前打开的文件中

在命令模式下输入插入命令i(insert)、附加命令a (append)、打开命令o(open)、修改命令c(change)、取代命令r或替换命令s都可以进入文本编辑模式

3 尾行模式(last line mode)

尾行模式主要用于保存文件或退出Vim,同时也可以设置编辑环境和一些编译工作,如列出行号(set nu)、寻找字符串(/target)等

在命令模式下,用户按冒号键(:)即可进入末行模式下,此时Vi会在显示窗口的最后一行显示一个”:“作为末行模式的提示符,等待用户输入命令

二、Vim文本编辑命令

约定:在没有特殊说明的情况下,以下Vim编辑命令部分提到的命令均是在命令模式下使用。

1 vim插入命令

在命令模式下按以下按键可进入编辑模式,执行插入操作,具体包括:

从光标当前所在行的【行首】处开始插入:I

从光标当前所在行的【行尾】处开始插入:A

从光标当前所在行的【下一行】处开始插入:o

从光标当前所在行的【上一行】处开始插入:O

从光标当前所在位置的【前】一个字符处开始插入:i

从光标当前所在位置的【后】一个字符处开始插入:a

tips:i (insert)是在当前位置插入,a (append)表示是在后面追加

2 vim删除命令

在命令模式下按以下按键可执行删除操作,具体包括:

删除从光标所在位置到当前【单词结束】部分的内容并进入插入模式:cw、cW

删除从光标所在位置到当前【单词开始】部分的内容并进入插入模式:cb、cB

删除从光标所在位置到当前【单词结束】部分的内容但不进入插入模式:dw、dW

删除从光标所在位置到当前【单词开始】部分的内容但不进入插入模式:db、dB

删除光标位置的【一个】字符:x

删除当前光标所在【行】:dd

删除从光标所在位置到当前【行首】的内容:d0

删除从光标所在位置到当前【行尾】的内容:d$

tips:

(1) Vim的命令中,0 表示行首,$ 表示行尾,更多内容可参考卡拉图Vim操作范围、文件范围介绍

(2) w(word)、b(back)命令用于光标移动,具体可参考卡拉图:vim光标移动命令汇总

(3) cW、cB、dW、dB 命令操作的单词是以空白字符(空格、Tab)分隔的字符串

删除当前【段落】从光标位置开始到【段末】的内容:d}

删除当前【段落】从光标位置开始到【段首】的内容:d{

删除当前【句子】从光标位置开始到【句末】的内容:d)

删除当前【句子】从光标位置开始到【句首】的内容:d(

tips:Vim命令中用 ( 和 ) 表示句子,{ 和 } 表示段落

3 vim复制命令、vim粘贴命令

在命令模式下按以下按键可执行复制、粘贴操作,具体包括:

将最后一次删除或复制操作的文本内容粘贴到光标所在字符之【后】:p

将最后一个删除或复制操作的文本内容粘贴到光标当前字符之【前】:P

复制从光标所在位置到当前【单词结束】部分的内容:yw

复制光标所在【行】的所有字符 (包含换行符):yy

tips:yyp 操作可以实现复制一整行内容到当前所在行的下一行

4 vim替换命令

在命令模式下按以下按键后,再输入字符可替换原始文件中的内容

一直替换光标所在字符,直到按下[ESC]键为止:R

删除、复制操作的操作单位可以加操作次数,操作对象的范围为:操作次数 * 操作单位

替换光标当前所在字符一次:r

例如:d3w命令表示删除三个单词,10dd命令表示从光标所在行开始删除后面的十行,更多内容可以参考Vim中的操作符和动作命令。

5 vim撤销命令、vim回退反撤销命令

在命令模式下可执行撤销操作

撤销最近的一次操作:u

恢复最近的一次操作(取消撤销):<Ctrl> + r

tips:多次执行u 命令可以连续撤销最近的操作

6 vim保存命令

在尾行模式下执行以下命令可保存当前编辑的文件内容

保存当前编辑的文件::w

保存当前编辑的文件并退出vim::wq

强制将当前编辑的文件保存::w!

tips:上述操作是在尾行模式下执行的,所以命令都是以:开头

7 vim另存为命令

在尾行模式下执行命令 :w a.txt 可将vim当前打开的文件另存为新文件a.txt.

tips:w(write) 表示将文件存档,: 表示尾行模式命令。

8 vim显示当前文件名的方法

命令 <Ctrl> + g 可显示当前编辑文件名及行数,可以在不退出 Vim 的情况下了解当前编辑文件的信息,更多内容,可参考30个vim常用命令和使用 vim技巧 。

Vim入门级文件编辑命令汇总就先介绍到这里了,更多Vim文件编辑命令和Vim相关操作可阅读本站其它文章内容。

H. 在linux下的VIM中替换命令的格式是什么各部分的含义是什么

:s/p1/p2/g
用p2替换p1
:n1,n2s/p1/p2/g
将n1到n2行中的p1用p2替换

I. 在 Vim 中怎样替换每行第二个出现的指定字符

qa02f,r"jq

细说下这串的意思:

  1. "qa",是指进入录制模式,并以a命名这段录制;

  2. "02f,",是指光标跳到行首,寻找第二个逗号;

  3. "r"",r是替换,所以是把逗号替换成引号;

  4. "jq",光标移到下一行,并退出录制模式,这样一段录制就好了;

然后,就可以把光掘卖标移到要修改的行,然后按@a重放一遍判皮逗录制就行了。

J. vi替换字符命令

在vi命令模式下输入:
:50,100s/man/MAN/g
回车即可。
就是这样的。

如果是编辑模式,请先按一次ESC回到命令模式后再输入,确认你的输入在底部显示,即是正确的。

阅读全文

与vim替换命令详解相关的资料

热点内容
鸿蒙加密等级 浏览:802
cocos2dluapdf 浏览:491
假的加密锁靠谱吗 浏览:176
经营圣手服务器怎么调 浏览:749
arduino手机编程 浏览:481
西医pdf下载 浏览:29
后浪电影学院pdf 浏览:813
程序员怎么做到不被人嫉妒 浏览:669
cmd新建文件夹md命令 浏览:570
php数组中的数值排序 浏览:832
安卓手机怎么避免小孩内购 浏览:171
联想服务器出现黄色叹号怎么办 浏览:991
约翰编译器制作教程 浏览:130
大地pdf 浏览:109
pdfplus 浏览:577
汇编O命令 浏览:970
plt转pdf 浏览:366
魔兽60宏命令大全 浏览:480
php志愿者网站源码 浏览:875
贸易pdf 浏览:499