gpt4 book ai didi

bash - 使用 bash 工具替换 package.json 中的整行

转载 作者:行者123 更新时间:2023-11-29 09:50:56 25 4
gpt4 key购买 nike

我正在使用命令行安装 nodejs 项目所需的每个节点。

目前你可以做的:

sudo gen-web-app express

这将生成开始为 expressjs 开发所需的一切。

我正在努力

sudo gen-web-app reactjs

一切正常,除了我必须手动进入 package.json 并将启动脚本添加到文件中。我知道在 BASH 中使用 SED 是可能的,但我需要一些使用 sed 的帮助。

这是文件:

{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"nodemon": "^1.11.0",
"path": "^0.12.7",
"react": "^15.6.1",
"webpack": "^3.1.0",
"webpack-dev-server": "^2.5.1"
}
}

我想替换以下内容,但我希望能得到一点帮助:)

"test": "echo \"Error: no test specified\" && exit 1"

"start": "webpack-dev-server"

最佳答案

Download and install jq - 命令行 JSON语法感知解析器,可让您修改 .json文件。对于您所讨论的示例。

tmp=$(mktemp)    
jq '.scripts.start = "webpack-dev-server" | del(.scripts.test)' input.json > "$tmp" && mv "$tmp" input.json

将产生最终的 .json归档为

{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "webpack-dev-server"
},
"author": "",
"license": "ISC",
"dependencies": {
"nodemon": "^1.11.0",
"path": "^0.12.7",
"react": "^15.6.1",
"webpack": "^3.1.0",
"webpack-dev-server": "^2.5.1"
}
}

你可以玩jqjqplay.org 开发的免费 Playground 中.

关于bash - 使用 bash 工具替换 package.json 中的整行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45008223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com