sed 案例
sed:Stream Editor文本流编辑,sed是一个“非交互式的”面向字符流的编辑器。能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上。还可以对原文件改动,但是不会再屏幕上返回结果。
sed命令的选项(option):
-n :只打印模式匹配的行
-e :直接在命令行模式上进行sed动作编辑,此为默认选项
-f :将sed的动作写在一个文件内,用–f filename 执行filename内的sed动作
-r :支持扩展表达式
-i :直接修改文件内容
sed -i '/DEVICE/c\Ethernet' test
#匹配DEVICE的行,替换成Ethernet这行
c\ 把选定的行改为新的文本
[root@kbase ~]# cat test
lp:x:::lp:/var/spool/lpd:/sbin/nologin
DEVICE="eth0"
BOOTPROTO="static"
[root@kbase ~]# sed -i '/DEVICE/c\Ethernet' test
[root@kbase ~]# cat test
lp:x:::lp:/var/spool/lpd:/sbin/nologin
Ethernet
BOOTPROTO="static"
sed -i 's/static/dhcp/' test
把static替换成dhcp(/,@,# 地址定界符)
s 替换指定字符
[root@kbase ~]# cat test
BOOTPROTO="static"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes" [root@kbase ~]# sed -i 's/static/dhcp/' test
[root@kbase ~]# cat test
BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes"
sed -i 's/BOOTPROTO/#BOOTPROTO/' test
匹配BOOTPROTO替换成#BOOTPROTO,在配置文件中一般用于注释某行
[root@kbase ~]# cat test
BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes" [root@kbase ~]# sed -i 's/BOOTPROTO/#BOOTPROTO/' test
[root@kbase ~]# cat test
#BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes"
sed -i 's/ONBOOT/#&/' test
& 已匹配字符串标记
匹配ONBOOT的行的前面添加#号,在配置文件中也表示注释某行
[root@kbase ~]# cat test
#BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes" [root@kbase ~]# sed -i 's/ONBOOT/#&/' test
[root@kbase ~]# cat test
#BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
#ONBOOT="yes"
sed -i '/ONBOOT/s/#//' test
匹配ONBOOT的行,把#替换成空,即去掉#号,也一般用作去掉#注释
[root@kbase ~]# cat test
#BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
#ONBOOT="yes" [root@kbase ~]# sed -i '/ONBOOT/s/#//' test
[root@kbase ~]# cat test
#BOOTPROTO="dhcp"
HWADDR="00:0C:29:90:79:78"
ONBOOT="yes"
参考:
sed 案例的更多相关文章
- 四剑客(sed)
一. sed sed简介: 用Linux环境中的编辑器程序来编辑文本文件.这些编辑器可以让你用简单命令或鼠标单击来轻松地处理文本文件中的文本.但有时候,你会发现需要自动处理文本文件,可你又不想动用全副 ...
- Linux三剑客sed
注意sed和awk使用单引号,双引号有特殊解释 sed是Stream Editor(字符流编辑器)的缩写,简称流编辑器. sed是操作.过滤和转换文本内容的强大工具. 常用功能包括结合正则表达式对文件 ...
- 强大的grep,sed和awk--用案例来讲解
准备工作: 先简单了解grep,sed和awk功能 1) grep 显示匹配特定模式的内容 grep -v 'boy' test.txt 过滤掉test.txt文件的boy,显示其余内容 grep ' ...
- sed命令实现文件内容替换总结案例
sed -i "s@AAAAA@BBBBB@g" /home/local/payment-biz-service/env/test.txt sed -i "s#htxk. ...
- awk 和 sed 使用案例
1.模仿wc的行为,统计一个文本文件的文件的字符数.行数.单词数. awk '{numOfChar+=length($0);numOfWord+=NF}END{print numOfChar" ...
- sed线上经典案例之-同时替换多个字符串
回答网友请教的一个问题:配置文件如下:[aaa]cfg1=aaaxxxx=bbbcfg2=ccccfg3=ddd[bbb]cfg1=eeeyyyy=fffcfg2=gggcfg3=hhhcfg4=ii ...
- awk,sed文本处理案例
#!/bin/bash ############################################################################# #针对一个多级目录下 ...
- sed 实践案例 (不定期更新)
删除每行第一个字符 sed -r 's/^.//g' /etc/passwd 删掉每行第二个字符 sed -r 's/^(.)(.)/\1/g' /etc/passwd 删掉每行最后一个字符 sed ...
- NO8 find结合sed查找替换企业案例多方法精讲&命令总结!
·sed #替换 eg: sed 'sed 's#已有的内容#更改的内容#g' oldboy.txt s 代表替换,g代表全局,sg就是全局替换 ...
随机推荐
- mstsc远程登录设置
mstsc终于可以连上了, 1.系统属性 远程允许, 2.开启三个服务: Remote Desktop ConfigurationRemote Desktop ServicesRemote Deskt ...
- Delphi数据库处理
Delphi数据库处理 第一节 BDE.ADO.InterBase和dbExpress Delphi中处理数据库主要有两种方法,也就是BDE.ADO,从Delphi 6.0开始还加入了一种dbExpr ...
- JZOJ.5285【NOIP2017模拟8.16】排序
Description
- zookeeper基本概念及原理
zookeeper是一个分布式的,开源的分布式应用程序,该程序主要用于管理其他分布式应用程序.其他分布式应用程序可以基于zookeeper实现数据同步,配置维护和命名服务等等.zookeeper是Ha ...
- slenium截屏
创建全屏截屏: public static byte[] takeScreenshot(WebDriver driver) throws IOException { WebDriver augment ...
- HDU 1233 还是畅通工程(Kruskal)
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- 微信支付 统一订单 $order = WxPayApi::unifiedOrder($input); 断点调试
定位至 CODE /** * 将xml转为array * @param string $xml * @throws WxPayException */ public static function I ...
- transaction 数据库事务 roolback 回滚
事务是恢复和并发控制的基本单位 https://baike.baidu.com/item/数据库事务/9744607 事务有三种模型: 1.隐式事务是指每一条数据操作语句都自动地成为一个事务,事务的开 ...
- jmeter操作 — 文件上传、下载
一.上传/下载的过程. 上传的过程就是你把你本地的文件,扔到服务器上的这么一个过程. 下载呢,就是把服务器上的文件拿过来,然后存到你本地的这么一个过程. 总结 ...
- chrome命令
chrome://settings(设置) chrome://extensions(扩展程序) chrome://history(历史记录) chrome://settings/clearBrowse ...