linux sed给空文件首行插入_sed常用模板整理

本文介绍了Linux中sed命令的一些常用操作,包括替换文件中的特定文本、查找文件修改日期、设置参数、删除特定行以及插入和追加内容。通过这些模板,可以高效地对文本进行自动化处理和编辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ab88d094c86a7e91f4e2145403aee658.png

sed可以按照指令或脚本编辑文本的linux工具,文本处理功能非常强大,本文总结一些工作中常用的sed模板,方便大家使用

替换

1. 替换文件中所有的 aaa 到 bbb

sed -i 's/aaa/bbb/g' /path/to/file

2. 找到文件的修改日期

stat deploy | sed -n '/^Modify.*/p' # 找到
stat deploy | sed -n '/^Modify.*/p' | grep -Eo "....-..-.. ..:..:.." # 提取出修改起义

2. 找到 aaa 参数,并设置为off

sed -i '/^aaa/s/on/off/' /path/to/file

可以配合grep使用,完成自动设置参数

have_aaa=$(grep aaa /path/to/file | sed '/^#.*/d') # 寻找是否以存在aaa参数
if [ ! -z $have_aaa ];then # 如果存在
    sed -i '/^aaa/s/on/off/' /path/to/file # 则修改为off
else  # 如果不存在
    sed -i '/ccc/a aaa off' /path/to/file # 则在ccc参数下新增 aaa off
    # sed -i '$a/aaa off' /path/to/file  # 则在最后新增 aaa off
fi

滤掉所有注释行

cat /etc/my.cnf | sed '/^#.*/d'

找到并删除

找到包含aaa的行并删除

sed -i '/aaa/d' /path/to/file

插入追加

  • a/ 在当前行下面插入;
  • i/ 在当前行上面插入;
  • c/ 把当前行改为新的;

在ccc开头的行下面插入 something

sed -i '/^ccc/a something' /path/to/file

在ccc开头的行后追加 something

sed -i '/^ccc/s/$/something/' /path/to/file

在ccc后紧接着追加something

sed -i 's/ccc/&something/' /path/to/file
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值