You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用sed执行查找替换操作时命令不生效问题求助

sed替换失效问题排查与修复

核心问题原因

  • 正则特殊字符未转义:sed基础正则中[、]是表示字符组的保留字符,原命令中未转义的[]会被解析为空字符组,无法匹配到文本中实际的[]字面量。
  • 跨系统-i参数不兼容:macOS自带的BSD sed要求-i必须指定备份后缀,不需要备份需传入空字符串'',否则命令会报错执行失败。

修复后命令

Linux(GNU sed)适用

使用#作为sed替换分隔符,避免转义路径中的斜杠,同时转义匹配规则里的方括号:

sed -i -e 's#purge: \[\],#purge: ["./src/**/*.{js,jsx,ts,tsx}", "./public/index.html"],#g' myfile.txt

macOS(BSD sed)适用

额外给-i参数补充空后缀参数:

sed -i '' -e 's#purge: \[\],#purge: ["./src/**/*.{js,jsx,ts,tsx}", "./public/index.html"],#g' myfile.txt

内容的提问来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:54:06