`
toty01
  • 浏览: 14086 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Linux系统攻略之:关于vi替换命令的使用说明

阅读更多

 

vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。

 

: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

 

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

 

:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

 

1.:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

 

2. :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

 

3. :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

 

4. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

 

5. 删除文本中的^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 "15" dest

· strings A>B

 

6. 其它

利用 :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 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

分享到:
评论

相关推荐

    linuxvi替换命令借鉴.pdf

    linuxvi替换命令借鉴.pdf

    linux vi 常用命令

    linux vi 常用命令 命令行模式(command mode)功能键 1). 插入模式 按「i」切换进入插入模式「insert mode」,按"i"进入插入模式后是从光标当前位置开始输入文件; 按「a」进入插入模式后,是从目前光标所在位置...

    Linux网络操作系统基础:Vi编辑器使用方法.pptx

    Linux文本编辑器 - vi;Linux文本编辑器 - vim;vim编辑器命令格式;vim基础操作 - 打开文件;vim基础操作 - 移动光标;vim基础操作 - 数据操作;vim基础操作 - 行号显示与取消;vim基础操作 - 查找与替换;vim基础操作 - ...

    Linux系统中的VI命令

    Linux系统中的VI命令 1、Vi介绍: Vi编辑器是所有Unix及Linx系统下标准的编辑器,类似于window系统下的notepad(记事本)。 Vi和Vim都是linux中的编辑器,不同的是,vim比较高级,可以视为vi的升级版本。 2、Vi三种...

    大数据基础-Linux基础详解课程25.vi编辑命令-替换搜索取消命令.mp4

    大数据基础-Linux基础详解课程

    linux系统vim实验报告.doc

    关于文本编辑器 vim 的使用 【注】里面的内容和自己跟着敲敲,文件名字换成自己的,可以套用我的模板和前言结论,代码最好跟着敲敲,里面的操作步骤我也说的非常明白。 1.vi 的三种模式:编辑模式,命令模式,最后行...

    vi命令入门详解.txt

    Vi是Linux系统的第一个全屏幕交互式编辑程序,它从诞生至今一直得到广大用户的青睐,历经数十年仍 然是人们主要使用的文本编辑工具,足见其生命力之强,而强大的生命力是其强大的功能带来的。 本章中,我们将...

    Linux应用技术:Linux重定向与管道.pptx

    Linux操作命令 Linux目录管理 Linux文件管理 拓展:管道和重定向 Linux文件系统 系统及其他命令 vi编辑器 磁盘分区管理 拓展:重定向 输出重定向 功能:将一个命令的输出重定向到一个文件中,而不是屏幕显示。 输出...

    vi常用命令汇总.docx

    vi常用命令汇总:编辑器具备的功能 1)打开文件、新建文件、保存文件 2)光标移动 3)文本编辑 4)(多行间|多列间)复制、粘贴、删除 5)查找和替换

    LINUX操作系统(电子教案,参考答案)

    芬兰青年Linus Torvalds和其杰作的传奇故事吸引了无数的电脑爱好者尝试去使用Linux,但他们中的大多数人却被Unix类操作系统传统的枯燥的字符界面、艰涩难懂的操作命令和数量庞大的基本概念以及基础知识所吓退。...

    Linux中vi编辑模式下基本操作命令

    首先vi是Linux终端下或控制台下常用的编辑器,基本的操作方式为: vi /路径/文件名 进入之后按”a”、“i”、”o”键都可以对文件进行编辑 退出vi编辑模式的方法: 按”esc”键,输入”:q!”即可强制退出(注意...

    Linux运维-操作系统 教程 从入门到精通101课-42-42文件系统命令-vi末行模式 查找与替换.mp4

    Linux运维-操作系统 教程 从入门到精通101课-42-42文件系统命令-vi末行模式 查找与替

    Linux常见命令与shell脚本

    Linux常用命令 2 1.1 su用户切换 2 1.2 useradd 添加用户 2 1.3 passwd修改口令 2 1.4 ls查看文件/目录 3 1.5 cd改变工作目录 4 1.6 pwd显示工作目录 4 1.7 mkdir创建目录 5 1.8 rmdir删除空目录 5 1.9 cp文件/目录...

    学习vi和vim编辑器

    《学习vi和vim编辑器(第7版)》将说明使用这两种程序编辑文档的基础技巧,并讨论高级工具,例如交互式宏与扩展编辑器的脚本——我们的内容编写成容易遵循步骤操作的风格,成就本书的经典地位。读者将学到:  ·快速...

    入门学习Linux常用必会60个命令实例详解doc/txt

    ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统...

    学习VI和VIM编辑器第7版中文

    Vim现在是大多数Linux系统上的默认编辑器,也是Mac OSX的默认vi版本,同时能在许多其他操作系统上执行。 《学习vi和Vim编辑器(中文版第7版)》将说明使用这两种程序编辑文档的基础技巧,并讨论高级工具,例如交互式宏...

    linux C编程实战

     1.4.3 Linux的常用命令   1.5 Linux下程序的开发环境和开发过程   1.6 习题   第2章 C编程基础、Vi和Emacs编辑器   2.1 C程序的结构   2.2 C语言的基本数据类型   2.2.1 整型   2.2.2 浮点...

    学习vi和vim编辑器_第7版_中文+英文_PDF

    《学习vi和Vim编辑器(中文版第7版)》将说明使用这两种程序编辑文档的基础技巧,并讨论高级工具,例如交互式宏与扩展编辑器的脚本——我们的内容编写成容易遵循步骤操作的风格,成就本书的经典地位。读者将学到: ·...

    学习vi和vim编辑器_第7版_中文

    Vim现在是大多数Linux系统上的默认编辑器,也是Mac OSX的默认vi版本,同时能在许多其他操作系统上执行。 《学习vi和Vim编辑器(中文版第7版)》将说明使用这两种程序编辑文档的基础技巧,并讨论高级工具,例如交互式宏...

Global site tag (gtag.js) - Google Analytics