最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux?vim全局替換的實現(xiàn)方法

 更新時間:2023年08月25日 08:39:27   作者:bluewelkin  
這篇文章主要介紹了Linux?vim全局替換的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Linux vim全局替換

Linux命令:vi全局替換方法

語法為 :[addr]s/源字符串/目的字符串/[option]

全局替換命令為::%s/源字符串/目的字符串/g

[addr]: 表示檢索范圍,省略時表示當(dāng)前行。

  • 如:“1,20” :表示從第1行到20行;
  • “%” :表示整個文件,同“1,$”;
  • “. ,$” :從當(dāng)前行到文件尾;

s :表示替換操作

[option] :表示操作類型 

  • 如:g 表示全局替換;
  • c 表示進行確認
  • p 表示替代結(jié)果逐行顯示(Ctrl + L恢復(fù)屏幕);
  • 省略option時僅對每行第一個匹配串進行替換;
  • 如果在源字符串和目的字符串中出現(xiàn)特殊字符,需要用”\”轉(zhuǎn)義

1. 基本的替換

  • :s/vivian/sky/ 替換當(dāng)前行第一個 vivian 為 sky
  • :s/vivian/sky/g 替換當(dāng)前行所有 vivian 為 sky
  • :n,$s/vivian/sky/ 替換第 n 行開始到最后一行中每一行的第一個 vivian 為 sky
  • :n,$s/vivian/sky/g 替換第 n 行開始到最后一行中每一行所有 vivian 為 sky

(n 為數(shù)字,若 n 為 .,表示從當(dāng)前行開始到最后一行)

  • :%s/vivian/sky/(等同于 :g/vivian/s//sky/)替換每一行的第一個 vivian 為 sky
  • :%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替換每一行中所有 vivian 為 sky

2. 可以使用 # 作為分隔符,此時中間出現(xiàn)的 / 不會作為分隔符

  • :s#vivian/#sky/# 替換當(dāng)前行第一個 vivian/ 為 sky/
  • :%s+/oradata/apras/+/user01/apras1+ (使用+ 來替換 / ): /oradata/apras/替換成/user01/apras1/

vim替換和查找

基本查找和替換

在Vim中,可以使用 :substitute(:s) 命令來查找和替換文本。

要在Vim中運行命令,必須處于 normal 模式,這是啟動編輯器時的默認模式。 要從其他任何模式返回 normal 模式,只需按 Esc 鍵。

替換命令的一般形式如下:

:[range]s/{pattern}/{string}/[flags] [count]

該命令在 [range] 中的每一行中搜索 {pattern} ,并將其替換為 {string} 。 是與命令 [count] 相乘的正整數(shù)。

如果未給出 [range] [count] ,則僅替換當(dāng)前行中找到的 pattern 。 當(dāng)前行是光標(biāo)所在的行。

range確定范圍,不寫默認為當(dāng)前行。

%         # 表示整個文件內(nèi)容
.         # 表示當(dāng)前行
$         # 表示最后一行
m,n       # 表示從第m行到第n行
,n        # 表示從當(dāng)前行到第n行
n,        # 表示從第n行到當(dāng)前行
n         # 指定行
+n        # 表示當(dāng)前行之后的n行

flags為替換標(biāo)志位,默認為指定范圍內(nèi)的行的第一次匹配的位置,幫助文檔:h s_flags

常用標(biāo)志如下:

g: global,表示在指定范圍內(nèi)執(zhí)行全局操作,替換所有匹配項
c: confirm,可以確認或拒絕修改
n: number,報告匹配到的次數(shù),不替換,可用來查詢匹配次數(shù)
i: 執(zhí)行不區(qū)分大小寫的替換
I: 執(zhí)行區(qū)分大小寫的替換
e: 防止替換失敗時顯示錯誤消息

單行查找后替換

  • :s/{pattern}/{string}/gc 單行一個一個確認替換
  • :%s/{pattern}/{string}/gc 范圍整個頁面一個一個確認替換
  • :m,ns/str1/str2/ 替換第 n 行開始到最后一行中每一行的第一個 str1 為 str2

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

谢通门县| 平山县| 临朐县| 宜昌市| 乌兰浩特市| 东平县| 华容县| 腾冲县| 桃园市| 恩平市| 得荣县| 陵川县| 土默特右旗| 南木林县| 桑日县| 临洮县| 伊通| 新疆| 介休市| 泊头市| 灵武市| 屏东市| 孟村| 沐川县| 诏安县| 黎城县| 交口县| 安化县| 安泽县| 扶绥县| 洪洞县| 边坝县| 西平县| 拉孜县| 丹东市| 台南市| 河池市| 台北市| 玉环县| 周口市| 岑巩县|