1. 基本的替换
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
2. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/
3. 删除文本中的^M
问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M,请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。
使用命令:cat filename1 | tr -d “^V^M” > newfile;
使用命令:sed -e “s/^V^M//” filename > outputfilename
需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。
在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:
:%s/^V^M//
:%s/^M$//g
如果上述方法无用,则正确的解决办法是:
tr -d “\r” < src >dest
tr -d “\015″ dest
strings A>B
4. 其它用法
利用 :s 命令可以实现字符串的替换。具体的用法包括:
:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1
:g/str1/s//str2/g 功能同上
从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。
分享到:
相关推荐
Linux vi替换字符串-lhrbest-ITPUB博客.mhtmlLinux vi替换字符串-lhrbest-ITPUB博客.mhtml
Vi/Vim作为Linux系统中最常用的文本编辑器之一,提供了强大的文本处理功能,使得批量替换字符串变得非常简单高效。 #### 一、通过vi编辑器来替换 在vi/vim编辑器中,可以通过`:s`命令来实现字符串的替换。下面详细...
LINUX vim替换字符串指令 本文档主要介绍了在 LINUX 环境下使用 vim 编辑器时,如何使用 `s` 命令来替换字符串。本文档共四页,涵盖了多种使用 `s` 命令的方式,包括基本用法、使用分隔符、删除文本中的换行符等...
在 Linux 的 VI/VIM 编辑器中,可以使用 `:s` 命令进行字符串替换。全局替换指的是在整个文档范围内进行字符串替换。 1. **使用 `v + G + $`** 首先进入可视模式 `v` 选择全文,然后移动到文档末尾 `G + $`,接着...
替换字符串 - `1,$s/old/new/g`:全局替换全文中的“old”为“new”。 ##### 5. 保存文件 - `w`:保存文件。 ##### 6. 退出VI - `q`:退出,如果有未保存的修改,则不能退出。 - `q!`:强制退出,放弃所有修改。 ...
8. **替换字符串**:将50到100行之间的所有"man"改为"MAN",需先在命令模式下输入`:50,100s/man/MAN/g`,`g`表示全局替换。 9. **撤销操作**:如果需要撤销之前的修改,可以使用`:undo`或`:u`命令,这会恢复到上一...
`:向前或向后查找字符串 - `u`:撤销最近一次操作 - `U`:撤销对当前行的所有修改 - `J`:合并当前行与下一行 - `ZZ`:在末行模式下,相当于`:wq` 通过上述讲解,你对vi编辑器应该有了更深入的理解。实践是掌握vi...
这些命令可以让用户快速地替换文件中的文字或字符串。 Vi 编辑器是一个功能强大、灵活、易于使用的编辑器。它可以满足用户在 UNIX 操作系统中编辑文件的需求。 1. Vi 编辑器的基本模式 Vi 编辑器有两种基本模式:...
11. **grep**:搜索文件中的特定字符串,帮助快速找到包含特定文本的文件。 12. **find**:在文件系统中查找文件,根据名称、类型、大小等条件进行搜索。 13. **sudo**:以管理员权限运行命令,执行需要特权的操作。...
- `vi +/pattern filename`:打开文件,光标定位在第一个与`pattern`匹配的字符串处。 - `vi -r filename`:如果在上次编辑`filename`时发生系统崩溃,恢复编辑状态。 ### 2. 移动光标 - `h`:光标左移一个字符。 ...
* 替换字符串:按 % 键输入要替换的字符串,并回车键确认。 VI 编辑器是 Linux 和 Unix 上最基本的文本编辑器,它的强大不逊色于任何最新的文本编辑器。学会使用 VI 编辑器,你将在 Linux 的世界里畅行无阻。
`)、查找字符串(`/string`)、替换字符串(`s/old/new/g`)等。 **4. 文本操作** - **替换和删除** - `rc`:用c替换光标处的字符 - `nx`:删除光标前n个字符 - `dd`:删除当前行 - **粘贴和复制** - `yy`:复制当...
使用`%s/old/new/g`全局替换字符串,`n1,n2s/old/new/g`在特定行范围内替换。 #### 实用扩展功能 - **自定义快捷键**:使用`:map`命令可以创建自定义快捷键,例如`:map ^PI # <ESC>`用于在文档开头插入特定字符。...
* a,bs/F/T:替换文本操作,用于在第 a 行到第 b 行之间,将 F 字符串换成 T 字符串 5. 保存和退出命令 * :wq:在命令模式下,执行存盘退出操作 * :w:在命令模式下,执行存盘操作 * :w!:在命令模式下,执行...
- 设置编辑环境,如查找字符串、显示行号等功能。 - 通常将底行模式视为命令模式的一部分,简化使用流程。 #### 二、Vi 的基本操作 1. **启动Vi** - 在命令行输入`vi [文件名]`即可启动vi编辑器并打开指定文件...
此语句将指定的日期字符串转换为日期类型。 #### 4. 使用TRUNC函数 这部分介绍了如何使用`TRUNC`函数截取日期。 - 截取到年:`SELECT TRUNC(SYSDATE, 'YEAR') FROM DUAL` - 截取到当前日期:`SELECT TRUNC...
+ :m,n s/asicA/asicB/: 将第 m 行到第 n 行中的名为 asicA 的字符串替换为 asicB 其他实用命令 * Al: 在行尾开始插入文本 * I: 在行首开始插入文本 * R: 替换光标后的一个字符 * cw: 替换光标后的一个单词 * D: ...
在末行模式下,用户可以使用各种编辑操作命令,例如退出命令、行号操作、字符串搜索、文本替换、删除文本内容、恢复文件内容操作等。这些命令可以帮助用户快速编辑文本文件。 基本编辑命令 Vi 编辑器提供了多种...
本篇文档将详细介绍vi操作的基本命令,包括光标移动、文本插入、删除、替换、重复命令以及查找和替换字符串等。 首先,进入vi的命令模式通常是通过按[Esc]键。此时,键盘上的按键将被解释为命令。移动光标主要使用...