`

vi替换命令用法详解

 
阅读更多

vi替换命令用法详解

: ranges /pat1/pat2/g

其中
: 这是Vi 的命令执行界面。
range 是命令执行范围的指定: 百分号(% )表示所有行
点(. )表示当前行
美元($ )表示最末行

例如:
10,20 表示第1020 行,
.,$ 表示当前行到最后一行,.
+2,$-5 表示当前行后两行直到全文的倒数第五行

s 表示其后是一个替换命令。
pat1 这是要查找的一个正则表达式
pat2 这是希望把匹配串变成的模式的正则表达式

g 可选标志,带这个标志表示替换将针对行中每个匹配的串进行,否则则只替换行中第一个匹配串。


:/string #向下查找
:?stirng   # 向上查找

 

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

 

分享到:
评论

相关推荐

    vi命令入门详解.txt

    屏幕文本编辑器Vi 本章介绍Linux上最常用的文本编辑器Vi。文本编辑器是所有计算机系统中最常使用的一种工具。...Vi没有菜单,只有命令,且命令繁多。Vi有三种基本工作模式:命令行模式、文本输入模式和末行模 式。

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

    入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不...

    crontab用法详解

    如果希望添加、删除或编辑crontab文件中的条目,而EDITOR环境变量又设置为vi,那么就可以用vi来编辑crontab文件,相应的命令为: $ crontab -e 可以像使用vi编辑其他任何文件那样修改crontab文件并退出。 删除...

    正则表达式使用详解及使用实例

    简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或sed shell程序等。此外,象...

    详解Linux文本编辑器Vim

    vi 【文件名】–>进入命令模式,输入i a o进入插入模式 命令模式:输入wq退出;输入i a o进入插入模式;输入: 进入编辑模式 插入模式:ESC退到命令模式 编辑模式:命令以回车结束运行 插入命令: 定位命令: ...

    一张图记住 Vim 常用命令

    文章目录一、图片二、详解1、Vim 的基本概念2、Vim 的基本操作a、进入 vimb、切换至插入模式c、Insert 的切换d、退出 vi 及保存文件3、命令行模式功能键1). 插入模式2). 从插入模式切换为命令行模式3). 移动光标4...

    UNIX操作系统学习教程

    4.2 vi编辑器的最基本用法 32 4.2.1 vi简介 32 4.2.2 vi的启动和退出 33 4.2.3 vi的两种模式 33 4.2.4 vi的基本操作 34 4.2.5 vi的高级操作 36 4.3 目录操作命令 38 4.3.1 pwd 38 4.3.2 mkdir 38 4.3.3 cd 38 4.3.4 ...

    Vim文本编辑器及其应用详解

    文章目录Vim及其安装Vim三种工作模式命令模式输入模式编辑模式Vim基本操作Vim 打开文件命令模式操作光标移动复制、删除、粘贴、撤销操作:可视化模式的基本操作编辑模式操作Vim 查找文本Vim 替换文本Vim 保存退出...

    VIM使用不熟练?看完这篇文章,让你使用VIM效率提高至少一倍! ——《Linux之vim知识详解》

    段落间移动-vim的编辑命令字符编辑删除命令粘贴命令复制命令(y,yank)改变命令(c,change)替换命令(r,replace)- 其他编辑操作- 可视化命令- 撤销此前的编辑- 撤销此前的撤销- 重复前一个编辑操作- 翻屏操作- vim...

    详解Android中fragment和viewpager的那点事儿

    在之前的博文《Android 中使用 ViewPager实现屏幕页面切换和页面轮播效果》和《详解Android中Fragment的两种创建方式》以及《Android中fragment与activity之间的交互(两种实现方式)》中我们介绍了ViewPager以及...

    vim学习高级技巧之序列的生成方法详解

    前言 本文主要给大家介绍了关于在vim中插入数字序列的方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。...包括替换指定字符,并在后面依次跟上序列数字。 使用line() line('.')

    DM8_SQL语言使用手册.pdf

    目录 第 1 章 结构化查询语言 DM_SQL 简介 ....................................................................1 1.1 DM_SQL 语言的特点 .......................................................................

    php网络开发完全手册

    1.6.1 Vi及Vim 20 1.6.2 Eclipse+PHPEclipse插件 21 1.6.3 UltraEdit 21 1.6.4 EditPlus 22 1.6.5 支持PHP的IDE环境 22 1.7 小结 23 第2章 PHP的基础语法 24 2.1 语言构成与工作原理 24 2.2 常量与变量 25 2.2.1 ...

    webx3框架指南PDF教程附学习Demo

    你可以使用全部的Webx,也可以仅仅使用到Webx的任何一个层次。 引言 ............................................................................................................................... ix 1. ...

Global site tag (gtag.js) - Google Analytics