MacOS下使用sed

1,899 阅读1分钟

按正则进行替换文本

# -i '' 在源文件上改动 '' 代表不需要备份 '.xxx' 以xxx作为后缀名进行备份
sed -i '' 's/老的文本内容/新的文本内容/g' ./a.txt

按行进行文本替换

# 1c代表第一行,nc代表第n行,n,mc代表从第n到第m行
sed -i '' '1c\
HELLO
' ./a.txt

切记一定要

换行 换行 换行

重要的事情说三遍

血与泪的总结,不换行会一直报错

sed: 1: "1c\123": extra characters after \ at the end of c command

如果是在终端使用,要么直接复制,要么先输入一个 ' ,等换完行再输入另一个 '

这里只举一个例子,主要是想说换行的问题,网上貌似没有人提及这一点,更多sed的用法,请查看

可能本方法只适用我当前的系统 MacOS: 10.15.5