用 jq 一键美化剪贴板中的 JSON

Using jq to format JSON on the clipboard

Jq 是我日常离不开的神器,最近 Sequoia McDowell 的文章又让我发现了新大陆。作者分享了一个绝妙技巧:通过别名自动格式化剪贴板里的 JSON。不过,原方案在 macOS 和 Linux 上需要适配,比如用 xclip 替代 pbcopy。更关键的是,如果剪贴板内容不是 JSON,jq 报错会导致内容被清空。我优化了脚本,加入了错误处理逻辑:只有当内容能成功解析为 JSON 时才进行格式化,否则保持原样。这个小改动让 jsontidy 命令变得既强大又安全,彻底解决了误操作风险。

我如此喜欢这个美化格式化的功能,以至于我设置了一个别名,用来格式化我复制的 JSON 并将其放回剪贴板。
  1. wodenokoto

    我在 WSL 里的 Linux 上配置了 'pbpaste' 和 'pbcopy',作为那些又长又难记的原生命令的快捷别名。

    在移动端,但我记得 WSL 里其中一个命令好像是 'paste.exe'。

  2. _flux

    我用类似的方法来处理剪贴板内容:

    tr '\n' ' ' | sed 's/\t/ /g; s/ */ /g'

    不过我也曾换用过 xsel,因为 xclip 似乎对 Unicode 的支持不够好。当然,也许 xclip 后来已经修复了这个问题。

  3. OskarS

    这个别名很可爱,但我更喜欢用 fracjson[0] 来做 JSON 美化,而不是 jq,所以我可能会选那个!

    [0]: https://github.com/j-brooke/FracturedJson

同日更多故事

2026-09-02