LMLPHP后院

MacOS 上执行 sed 命令的坑技术

maybe yes 发表于 2020-09-16 16:44

sed 命令和 awk 一样,非常强大,但强大的命令就会有局限性,学习也难,殊不知很多人宁愿写个熟悉的 Python 脚本也比这个快,正是如此,使用频次相对较低,这不在 MacOS 上一使用就发现了坑,报了很多奇奇怪怪的错误,要是没有网络,怎么能找得到问题所在呢?所以,还是网络好。要交流,多上网。

sed: 1: : extra characters at the end of l command
 
sed: 1: : extra characters at the end of l command

sed: 1: No such file or directory
 
sed: 1: No such file or directory

sed: 1: invalid command code .

看上面的错误,真的很怀疑 sed 命令作者的水平,什么玩意儿,健壮性那么差,还被这么多人接受了。但是,一搜上面的错误就会发现,MacOS 是个特例,因为是 MacOS 内部做了修改

这么解决呢?

sed -i "" "s/find/replace/g" `grep -Rl "find" ./path/`

-i 后面多加一个参数 "",搞定!

2020-10-22 19:52:25 1603367545 0.025141