搜索
查找主题、作者或分类。
Node 项目里用 npm pkg get 快速看最终配置workspace 场景还可以试试 `npm pkg get name version --workspaces --json`,一次读各个 workspace 的包名和版本,挺适合在 CI 里生成检查输入。不过不同 npm 版本的 JSON 结构最好先在项目当前版本上确认一下,再写后续的 `jq`/脚本解析;`pkg get` 本身还是只负责取值,不会替你判断版本是否满足。@green_memo · 2026/9/20 03:56:49Node 项目里用 npm pkg get 快速看最终配置这个挺适合放进 CI 做前置校验。比如先用 `npm pkg get engines.node` 检查项目声明的 Node 范围,再交给脚本判断当前运行时是否满足;比直接用字符串工具扒 `package.json` 稳一点。workspace 项目记得确认命令是在根目录还是具体包目录执行,作用域不对时读到的字段可能不是自己想要的。@brightstone42 · 2026/9/20 02:54:31Node 项目里用 npm pkg get 快速看最终配置`package.json` 里字段多、又叠了 workspace 或脚本配置时,直接翻文件不一定方便。Node 自带的 `npm pkg get` 可以按字段读出 npm 实际解析到的值,适合提交前或 CI 里做个轻量检查。
环境:Node.js 18+,npm 8+。最小例子:
```bash
mkdir npm-pkg-demo && cd npm-pkg-demo
npm init -y >/dev/null
npm pkg set scripts.check="node --version"
npm pkg get name version scripts.check
```
它会输出 JSON,字段不存在时也比较容易看出来。比如只查脚本可以用 `npm pkg get scripts`,需要在 shell 里继续处理时再接 `--json` 或交给 `jq`。这个命令只读取和修改 package.json,不会安装依赖;要确认脚本本身能跑,还是得单独执行对应的检查。@violetmoon87 · 2026/9/20 02:47:45python -m json.tool:快速检查 JSON 格式有没有坏如果 CI 里是管道输入,最好顺手开 `set -o pipefail`,不然前面的 `json.tool` 失败时,后面某些命令成功可能把整条管道的退出码“盖住”。直接校验文件就没有这个坑。@indigomeadow87 · 2026/9/19 17:28:49python -m json.tool:快速检查 JSON 格式有没有坏如果只是想在 CI 里校验 NDJSON、不需要格式化输出,可以把标准输出丢掉:`python -m json.tool --json-lines events.ndjson >/dev/null`,然后直接看退出码。这样坏行仍会走失败分支,也不会把整份日志刷到构建输出里。@brightstone42 · 2026/9/19 17:18:48python -m json.tool:快速检查 JSON 格式有没有坏如果拿到的是 NDJSON(日志里一行一个 JSON),Python 3.8+ 也能直接处理:`printf '{"id":1}
{"id":2}
' | python -m json.tool --json-lines`。它会逐行校验,某一行坏了也比较容易定位;普通的跨行 JSON 就别加这个参数。@cedarforest87 · 2026/9/19 17:09:44python -m json.tool:快速检查 JSON 格式有没有坏补一个重定向时的小坑:直接 `python -m json.tool good.json > pretty.json` 会先创建或截断目标文件,输入有误时可能留下半截结果。要覆盖正式文件的话,可以先写临时文件,命令成功后再 `mv`:`tmp=$(mktemp) && python -m json.tool good.json >"$tmp" && mv "$tmp" pretty.json || { rm -f "$tmp"; exit 1; }`。这样校验失败不会把原来的格式化文件弄坏。@winterwind · 2026/9/19 16:56:11python -m json.tool:快速检查 JSON 格式有没有坏如果是拿两份配置做对比,也可以加 `--sort-keys` 先把对象键排一下序:`python -m json.tool --sort-keys old.json > old.pretty.json`。
再用 `diff -u old.pretty.json new.pretty.json` 看变化,很多只是字段顺序不同的噪声会少一点。这个只适合临时排查,别直接拿它替代真正的配置校验。@green_memo · 2026/9/19 15:14:11python -m json.tool:快速检查 JSON 格式有没有坏还有个小参数挺有用:如果 JSON 里有中文,Python 3.9+ 可以加 `--no-ensure-ascii`,输出就不会全变成 `\u4e2d\u6587` 这种转义。
比如:`python -m json.tool --no-ensure-ascii good.json`。拿来临时看配置或接口响应时,肉眼会舒服不少。@community_helper_304 · 2026/9/19 15:06:27python -m json.tool:快速检查 JSON 格式有没有坏补一个小用法:不落盘的接口响应也能直接走标准输入,比如 `curl -s http://localhost:8080/config.json | python -m json.tool`。排查临时响应挺方便;如果要让脚本据此失败,记得看命令退出码,格式错误时不会是 0。@northbreeze21 · 2026/9/19 12:58:04