Linux中使用sed命令替换字符串小结 - 笨鸟先不飞

huai371720876 2021-08-12 原文


Linux中使用sed命令替换字符串小结


sed替换的基本语法为:

sed \’s/原字符串/替换字符串/\’


单引号里面,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线”\”进行转义,但是单引号”‘”是没有办法用反斜线”\”转义的,这时候只要把命令中的单引号改为双引号就行了,例如:

sed “s/原字符串包含\’/替换字符串包含\’/” //要处理的字符包含单引号


命令中的三根斜线分隔符可以换成别的符号,这在要替换的内容有较多斜线是较为方便,只需要紧跟s定义即可,例如换成问号”?”:

sed \’s?原字符串?替换字符串?\’ //自定义分隔符为问号


可以在末尾加g替换每一个匹配的关键字,否则只替换每行的第一个,例如:

sed \’s/原字符串/替换字符串/\’ //替换所有匹配关键字


上箭头”^”表示行首,美元”$”符号如果在引号中表示行尾,但是在引号外却表示末行(最后一行),这里犯二了,搜了半天哪个符号表示首行,半天才想起来,首行就是数字”1″啊.那么在行首和行尾添加字符串就是把行尾和行首替换,例如:

sed \’s/^/添加的头部&/g\’ //在所有行首添加
sed \’s/$/&添加的尾部/g\’ //在所有行末添加
sed \’2s/原字符串/替换字符串/g\’ //替换第2行
sed \’$s/原字符串/替换字符串/g\’ //替换最后一行
sed \’2,5s/原字符串/替换字符串/g\’ //替换2到5行
sed \’2,$s/原字符串/替换字符串/g\’ //替换2到最后一行


替换样式可以多个在同一条命令中执行,用分号”;”分隔,例如:

sed \’s/^/添加的头部&/g;s/$/&添加的尾部/g\’ //同时执行两个替换规则


sed处理过的输出是直接输出到屏幕上的,要保存可以将输出重定向,或者使用参数”i”直接在文件中替换:

sed -i \’s/原字符串/替换字符串/g\’ filename //替换文件中的所有匹配项
发表于
2015-08-18 11:19 
笨鸟先不飞 
阅读(42503
评论(0
编辑 
收藏 
举报

 

版权声明:本文为huai371720876原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/huai371720876/p/4738886.html

Linux中使用sed命令替换字符串小结 - 笨鸟先不飞的更多相关文章

  1. 机票预订系统的数据流程图及实体联系图 – 不经意间

    机票预订系统的数据流程图及实体联系图    数据流图:    实体-联系图:   发表于 2017-10-11 […]...

  2. 电感、磁珠和零欧电阻的区别 – MILUMI

    电感、磁珠和零欧电阻的区别 电感是储能元件,多用于电源滤波回路、LC振荡电路、中低频的滤波电路等,其应用频率范 […]...

  3. adb server is out of date. killing… ADB server didn\’t ACK * failed to start daemon *……

    问题 使用 adb 命令的时候报错如下: 1 adb server is out of date. killi […]...

  4. 选择腾讯云部署应用的要慎重了,私有网络阉割,可靠性变得难以确定! – Maintell

    选择腾讯云部署应用的要慎重了,私有网络阉割,可靠性变得难以确定! 先说一下结论吧: 大中型应用强烈不建议部署到 […]...

  5. Github用法简介 – 将云梦龙

    Github用法简介 GitHub的使用已成潮流,作为一个程序员不懂点是不大像样,但是感觉网上的教程指东指西的 […]...

  6. NanoPC-T3 64位裸机编程 —— 启动和运行状态切换

    参考: https://github.com/metro94/s5p6818_spl https://gith […]...

  7. background-position值为像素时的使用方法 – 老鼠扛着刀

      以前一直都知道这个属性,但是每次使用的时候都是试来试去,感觉很麻烦,所以花了一点小时间研究了一下,很简单, […]...

  8. Linux 桌面玩家指南:11. 在同一个硬盘上安装多个 Linux 发行版以及为 Linux 安装 Nvidia 显卡驱动 – 京山游侠

    这里展示在同一个硬盘上安装多个 Linux 发行版。其实这个玩法本身是没有必要的,因为要使用多个 Linux […]...

随机推荐

  1. C# 9.0 新特性之参数非空检查简化

    阅读本文大概需要 1.5 分钟。 参数非空检查是缩写类库很常见的操作,在一个方法中要求参数不能为空,否则抛出相 […]...

  2. Bootstrap3的响应式缩略图幻灯轮播效果设计

    在线演示1 本地下载  HTML <div class="container">  <div […]...

  3. Shell – 长 ping 脚本监控网络时延

    生产环境中, 网络时延是一个很重要的指标. 为了方便检查网络时延的大小, 我们可以通过ping命令实现长时间的 […]...

  4. Everything is Serverless,从开源框架对比说起

    摘要:Everything is Serverless。 在众多云计算解决方案中,Serverless 逐渐崭 […]...

  5. 北大研三,为何会这般焦虑?是读博还是就业?

    前天星球里一位球友给我的提问,这个问题其实很有代表意义,而回答的角度很多,我一直秉承的是向上的心态,积极的面对 […]...

  6. 基于树莓派与YOLOv3模型的人体目标检测小车(一)

    项目介绍: 本科毕业选的深度学习的毕设,一开始只是学习了一下YOLOv3模型, 按照作者的指示在官网上下载下来 […]...

  7. 移动端底部导航栏固定——兼容IOS

    问题:移动端前端底部导航栏设计 兼容安卓下的各种浏览器和IOS自带的Safari,但是不兼容苹果下的 钉钉。 […]...

  8. Graylog日志管理系统—搜索查询方法使用简介

    Graylog日志管理系统—搜索查询方法使用简介 Elasticsearch 是一个基于 Luce […]...

展开目录

目录导航