sed 找出含有某个字符串的行 注释掉
1、源文件例子
[root@node1 ~]# cat /etc/fstab #
# /etc/fstab
# Created by anaconda on Mon Mar 1 18:32:15 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=3fa2b010-61bc-480e-bd49-cb7bee120fe3 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
[root@node1 ~]#
2、cp一个文件出来 测试修改 fs.txt
sed -i '/swap/s/^/#/g' fs.txt
3、diff看一下 ok了
[root@node1 ~]# diff fs.txt /etc/fstab
11c11
< #/dev/mapper/centos-swap swap swap defaults 0 0
---
> /dev/mapper/centos-swap swap swap defaults 0 0
[root@node1 ~]# cat /etc/fstab
4、如果要幂等执行 得判断是否被注释过了 如果注释过了 则不执行 不然就执行 然后再判断 这个适合用 until 命令
until grep swap fs.txt |grep "#" >/dev/null;do echo "disable swap" && sed -i '/swap/s/^/#/g' fs.txt;done
5、测试OK 换成实际环境 就是下面的 可以重复执行
until grep swap /etc/fstab |grep "#" >/dev/null;do echo "disable swap" && sed -i '/swap/s/^/#/g' /etc/fstab;done
sed 找出含有某个字符串的行 注释掉的更多相关文章
- Editplus 正则表达式 删除含有指定字符串的行 删除注释
		
1.删除含有指定字符串的行 替换: ^.*(指定字符串).*$ 为空 例如,删除含有"JOIN"的行, 替换: ^.*JOIN.*$ 为空 2.删除//行注释 替换: / ...
 - [Python3 练习] 010 找出藏在字符串中的“密码”
		
题目:找出藏在字符串中的"密码" (1) 描述 1) 题源 1 Python Challenge, level 3 2) 题源 2 小甲鱼老师的 Python 课程,第 20 讲课 ...
 - sed 删除含有某个字符串的行 (在文件txt)
		
#删除a.txt中含有“aaa”的行 sed -i “/aaa/d” a.txt
 - 389. Find the Difference 找出两个字符串中多余的一个字符
		
[抄题]: Given two strings s and t which consist of only lowercase letters. String t is generated by ra ...
 - 利用WinDbg找出程序崩溃的代码行号
		
之前碰到论坛里有几个好友,说程序不时的崩溃,什么xxoo不能read的! 如果光要是这个内存地址,估计你会疯掉~~ 所以分享一下基本的调试技巧,需要准备的工具有WinDbg + VC6.0, 下面是自 ...
 - Linux下sed找出IP中第四位
		
ip addr|sed -n '9p'|egrep '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'|sed -nr 's#^.*inet (.*) b ...
 - 【leetcode-03】给定一个字符串,请你找出其中不含有重复字符的最长子串的长度
		
开个新坑,leetcode上面做题目.下面是题目描述: <!-- 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度. 示例 1: 输入: "abcabcbb" 输出 ...
 - shell在一个大文件找出想要的一段字符串操作技巧
		
昨天端午,晚上的时候接了一个电话,我朋友的公司,数据库被两个工作没多久的phper给弄坏了,具体就是把一个字段值,给全表弄成一个了名字了,当然这个是可以配置了禁止全表更新数据库,这下可急坏了,找到我, ...
 - 如何在数据表当中找出被删掉的数据行ID
		
这个问题是一年前我刚步入IT行业的一个面试题,当时抓破头皮都想不到的问题,但现在回想过去自身不禁感到可笑,不多扯直接写解决方案.如何在数据表当中找出被删掉的数据行ID,意思是:在一堆的数据当中,让你找 ...
 
随机推荐
- jmeter正则表达式介绍
			
分三个层次介绍: 1. jmeter正则表达式有什么作用? 2. 正则表达式在哪? 3. 正则表达式怎么用? 1. jmeter正则表达式有什么作用? 答:提取请求中返回的数据, 然后获取的数据放入其 ...
 - MySQL学习07(规范化数据库设计)
			
规范化数据库设计 当数据库比较复杂时我们需要设计数据库 糟糕的数据库设计 : 数据冗余,存储空间浪费 数据更新和插入的异常 程序性能差 良好的数据库设计 : 节省数据的存储空间 能够保证数据的完整性 ...
 - Python Flask API实现方法-测试开发【提测平台】阶段小结(一)
			
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 本篇主要是对之前几次分享的阶阶段的总结,温故而知新,况且虽然看起来是一个小模块简单的增删改查操作,但其实涉及的内容点是非常的密集的,是非常 ...
 - sqli-labs lesson 32-37
			
宽字节注入: 原理:mysql在使用GBK编码的时候,会认为两个字符为一个汉字,例如%aa%5c就是一个汉字(前一个ascii码大于128才能到汉字的范围).我们在过滤 ' 的时候(也就是从防御的角度 ...
 - NOIP 模拟 6 模板
			
题目 题解 这道题是一道启发式合并的题目,每次合并完重构一下线段树就可以,不用线段树合并. 以操作时间为下标,建立一颗线段树,维护小球的个数与小球的颜色数,最后线段树上二分查找. 我们先不用考虑每个节 ...
 - C# 获取计算机的硬件、操作系统信息
			
C# 获取计算机的硬件.操作系统信息 获得信息的命名空间是:System.Management 创建ManagementObjectSearcher对象获取相关信息 eg: using Syste ...
 - OAuth2 与OpenID的区别
			
OAuth2 OpenId OpenId是在OAuth2基础之上实现的 比OAuth2更简便 OAuth2需要在认证后 额外的去再调用用户信息的接口 才能获取用户信息 而OpenId直接伴随token ...
 - Semaphore 类 的使用理解C#
			
示例 下面的代码示例创建一个信号量,其最大计数为3,初始计数为零. 该示例启动五个线程,这会阻止等待信号量. 主线程使用 Release(Int32) 方法重载将信号量计数增加到其最大值,从而允许三个 ...
 - springmvc学习日志三
			
一.文件的上传 1.首先在lib中添加相应的jar包 2.建立jsp页面,表单必须是post提交,编码必须是multipart/form-data,文件上传文本框必须起名 <body> & ...
 - C#多线程---Event类实现线程同步
			
一.简介 我们使用类(.net Framework中的类,如 AutoResetEvent, Semaphore类等)的方法来实现线程同步的时候,其实内部是调用操作系统的内核对象来实现的线程同步. S ...