2024年Clojure调查中分享您的想法!

欢迎!有关如何使用本站的信息,请参阅关于页面。

+1
IO

Clojure-1.12添加了`clojure.java.process`命名空间。我不明白为什么`clojure.java.process/capture`作为一个公开API被暴露,因为它基本上与`slurp`做同样的工作,只是在选项上存在一些细微的差别。

这不仅仅是一个答案,但有一个有趣的不同之处是,`capture`会修剪其输出,而对于某些原因,`slurp`不会进行修剪。看起来它可能会引起处理真正需要输出前导/尾部空白的过程的问题。
令人惊讶的是这个被添加进去了,而不是一个适合二进制数据的类似功能所缺失的

1 个答案

+1

选定
 
最佳回答

这是一个好问题,原始的 capture 功能曾做过更多事情,但现在已经慢慢被去除,现在它大多数功能与 slurp 相同。在解析shell命令的输出时,我一直在做剪裁输出的操作,但可能把这一功能放在 capture 里(其实更应该是在 slurp 中)并不合适。我认为我们在这个领域还需要进行一次调整。

...