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

如何使用json命令向package.json的scripts中追加内容而非覆盖?

如何用json命令向package.json的scripts追加内容

好问题!你之前的命令之所以会覆盖整个scripts对象,是因为直接把this.scripts重新赋值成了一个全新的对象——相当于把原来的脚本列表整个换掉了。要实现追加(保留原有脚本,添加新的),我们只需要在原有的scripts对象上直接添加属性,或者合并新的脚本对象进去就行。

这里有两种常用的方式:

1. 单个脚本追加

如果只需要添加一个新脚本,直接给this.scripts添加对应的属性即可:

json --in-place -f ./package.json -e 'this.scripts.foo = "bar"'

执行这个命令后,原来package.json里的scripts会保留所有原有内容,同时新增"foo": "bar"这一项。如果原来已经有foo脚本,它会被新值覆盖。

2. 批量追加多个脚本

如果要一次性添加多个新脚本,可以用Object.assign()方法,把原有scripts对象和新的脚本对象合并:

json --in-place -f ./package.json -e 'this.scripts = Object.assign(this.scripts, {"foo": "bar", "baz": "qux"})'

这个命令会把新的脚本键值对合并到原有scripts中,同样,若有同名脚本,新值会覆盖旧值,其余原有脚本保持不变。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 16:40:49