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

Bash技巧:移除JSON文本值中第一个\n\n之前的所有内容

解决方案

优先推荐:用jq处理(最可靠,适配JSON结构)

因为你的数据是JSON格式,用专门的JSON处理工具jq比sed/awk更稳妥,不会破坏JSON结构。执行以下命令即可批量修改所有条目的fr字段:

jq '.[].fr |= sub("^.*?\\n\\n"; "")' description6fr.json > modified_description6fr.json

命令说明:

  • .[].fr:遍历JSON数组中每个元素的fr字段
  • |=:将修改后的结果赋值回原字段
  • sub("^.*?\\n\\n"; ""):用正则非贪婪匹配从开头到第一个\n\n的所有内容,替换为空字符串,实现截去目标内容的效果

用sed的备选方案(仅适合简单场景)

如果一定要用sed,假设你的JSON中fr字段的内容是单行转义后的\n(如示例中的输出),可以先提取字段再处理:

cat description6fr.json | jq '.[].fr' | sed 's/^.*\\n\\n//'

注意:sed不理解JSON结构,如果你的JSON有复杂嵌套、多行内容或特殊字符,这种方法容易出错,不推荐用于大型JSON文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 13:41:13