tree 命令的 JSON 输出改进与陷阱
2025-07-25
tree 命令的 2.0 版本增加了通过文件描述符 3 输出未缩进 JSON 的功能(目前仅限 Linux)。然而,这一功能的初始实现存在问题,因为它假设了用户环境中存在特定的文件描述符。这导致了严重的兼容性问题,因此在 2.0.2 版本中,该功能被修改为仅在设置环境变量 STDDATA_FD 时才启用。这个故事突出了在软件开发中避免假设用户环境的必要性,同时也展示了 tree 命令如何通过 STDDATA_FD 环境变量灵活地输出结构化数据,并可以用 nushell 进行进一步处理。
(rgbcu.be)