linux %s替换命令,linux vi 替换命令
linux vi 替换命令
发布时间:2010-10-22 16:34:53 作者:佚名 我要评论
久了没用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 "\015" 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 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。
相关文章
这篇文章主要介绍了CentOS系统中安装高亮vim编辑工具的方法,需要的朋友可以参考下2014-05-01
在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来2014-04-21
vi 是 unix/linux 下极为普遍的一种文本编辑器. vi 有各种变种, 在不同的机器上有不同的变种软件. 其中 vim 比较好用也用得比较广泛. vim 是 Vi IMproved 的缩写, 表示更好2014-03-13
linux vim配置文件:语法高亮、显示状态行、C程序提供自动缩进等设置2013-12-13
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法2013-10-16
将一下代码copy到 用户目录下 新建文件为 .vimrc保存即可生效2013-07-31
分享vim配置文件一个,可以直接使用,配置出非常实用的编程功能,有需要的朋友参考下2013-07-31
把如下的文件保存为Linux主文件夹的".vimrc"文件(不同的Linux版本略有不同,ubuntu下是.vimrc),即可以把vim打造成一把利器2013-02-11
linux vi命令大全整理,可供需要的朋友参考2012-11-09
Vim是一个类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性,Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体2012-11-01
最新评论
linux %s替换命令,linux vi 替换命令相关推荐
- Linux 基础操作、常用shell命令、vi常用命令、man帮助手册
Linux 基础操作.常用shell命令.vi常用命令.man帮助手册 一.简述 记录简单的Linux 基础操作.常用shell命令.vi编辑器常用命令.man帮助手册的使用. 二.Linux 基础操 ...
- linux的命令vim,Linux命令:vi | vim命令
vim - vi 增强版.文本编辑器 格式:vim [options] [file ..] 说明:如果file存在,文件被打开并显示内容,如果文件不存在,当编辑后第一次存盘时创建它 [options] ...
- Linux常用命令,vi编辑器命令,Linux软件安装
文件系统 / 根目录 (相当于Windows我的电脑) opt 存放第三方应用软件 etc 配置文件 dev 设备文件 usr 用户文件 kernel 内核 var variable可变的 expor ...
- linux vim set ff,Linux命令:vi | vim命令
vim - vi 增强版.文本编辑器 格式:vim [options] [file ..] 说明:如果file存在,文件被打开并显示内容,如果文件不存在,当编辑后第一次存盘时创建它 [options] ...
- linux在vi创建文件,Linux下创建文本文件(vi/vim命令使用详解)
vi test.txt 或者 vim test.txt 再或者 touch test.txt vim是vi的升级版,指令更多,功能更强. 下面是收集的vim用法,当在vim里面要实现退出,首先要做的是 ...
- Linux从头开始学--学习笔记9知识点补充-ubuntu,centos;在linux上创建c程序;linux基础命令,shell命令,vi命令,man帮助手册
这是我从头开始学习Linux的学习笔记,后续还会更新. 记录自己的技术成长,也希望和大家分享交流,欢迎关注~ 本笔记为coursera网站课程<Linux for Developers>的 ...
- linux操作系统 第03章 vi文本编辑器
第3章 vi文本编辑器 3.1 vi文本编辑器概述 与Unix相同,Linux本质上是一个文本驱动(text-driven)的操作系统.文本文件就是全部由ASCII码字符及某种语言的编码字符构 ...
- linux系统vi替换命令,linux:vi 替换命令
转自:http://www.cnblogs.com/afant/archive/2009/03/11/1408745.html :s/^.*$/\L&/100 ##将100行内的小写转换成大写 ...
- linux vi命令操作实例,Linux下Vi替换字符命令操作实例
在Linux下的开发中,经常涉及到对文件中的字符进行处理,其中,对字符的替换操作也是非常的频繁.本文以一个实际的文件为例,详细 在Linux下的开发中,经常涉及到对文件中的字符进行处理,其中,对字符的 ...
- linux里面查找替换命令,Linux常用命令(一)————查找和替换
1. 查找一个字符串 一个字符串是一行上的一个或几个字符. 为查找一个字符串,在vi命令模式下键入"/",后面跟要查找的字符串,再按回车.vi将光标定位在该串下一次出现的地方上.键 ...
最新文章
- 白盒测试实践-任务完成
- mlxtend对sklearn进行扩展
- python制作动态条形图-python – 动态更新matplotlib中的条形图
- visual studio 2005,visual studio 2008调出即时窗口
- python处理中文字符串_python字符串中的中文处理
- 小程序 ajax 加载,小程序实战-小程序网络请求异步加载
- 力压Java、C语言!Python 获2018年度编程语言
- 使用linux_使用 AppImage 进行 Linux 软件包管理 | Linux 中国
- 服务器搭建对讲机系统,传统对讲机系统如何接入到融合通信系统?
- JavaScript 图片切割效果(带拖放、缩放效果)
- Halcon颜色分类-MLP
- 抖音无水印视频批量下载助手
- 详解网关和路由器的区别
- 芯片制作 | 和我一起来卷芯片
- socket服务器断开消息,详解JS WebSocket断开原因和心跳机制
- dbus-1 not met问题
- 程序员常用刷题网站分享
- matlab 自定义对象,面向对象: MATLAB 的自定义类 [MATLAB]
- 软件测试流程规范简介(不同公司流程规范不一样,仅供参考)
- 【转】为什么需要异步
热门文章
- f分布表完整图a=0.01_QC七大手法(工具)完整版介绍
- jsp java session_JSP Session
- 基于python车牌识别系统_GitHub - DataXujing/vehicle-license-plate-recognition: 基于Python的车牌检测和识别系统:...
- 计算机考研数据结构高分笔记,2021版天勤计算机考研高分笔记系列:数据结构高分笔记(第9版)...
- biu~biu~常用网站
- 我的世界java版袭击_袭击 - Minecraft Wiki,最详细的官方我的世界百科
- 交换排序图解_动画图解十个经典排序算法
- AVOD-理解系列(一)
- 阻滞增长模型求解_马尔萨斯与阻滞增长模型对于人口预测的分析
- 2×125MW发电厂升压站电气部分设计