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

使用sed替换CSV文件中<96>为短横线失败的技术求助

解决sed替换<96>未生效的问题

我来帮你搞定这个sed替换的问题!你的命令没生效的核心原因是模式中的&是sed的特殊元字符——它在sed的替换语法里代表「匹配到的整个字符串」,直接写&lt;96&gt;会被sed错误解析,导致无法匹配目标内容。

下面是两种可行的解决方法:

方法1:转义特殊字符&

把模式中的每个&用反斜杠\转义,让sed把它当作普通字符处理:

sed -i -e 's/\&lt;96\&gt;/-/g' /tmp/test.csv

验证步骤(避免误改原文件):

先去掉-i参数,把替换结果输出到终端确认:

sed -e 's/\&lt;96\&gt;/-/g' /tmp/test.csv

看到"/AMMWDC04_DC/A0F0 - AA DR"这样的结果后,再加上-i修改原文件。

方法2:直接匹配目标字符(如果适用)

如果&lt;96&gt;是HTML转义的短横线(EN DASH,Unicode U+2013),你也可以直接替换这个字符本身(前提是你的系统和文件编码支持):

sed -i -e 's/–/-/g' /tmp/test.csv

注意:这里的–是实际的短横线字符,和普通减号-是不同的Unicode字符,需要确保文件里的内容确实是这个字符而非转义字符串。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:30:14