请在大于2024年 Clojure 状态调查中分享您的想法!2024 State of Clojure Survey!

欢迎!请参阅关于页面以了解有关如何操作的更多信息。

+1
IO

Clojure-1.12 添加了 clojure.java.process 命名空间。我很好奇为什么 clojure.java.process/capture 作为一个公开的 API 被暴露,因为它基本上和 slurp 做的事情相同,只是在选项上有所不同。

这不是一个答案,但一个有趣的区别是,`capture` 会修剪其输出,而 `slurp` 则不会。这可能会在处理真正需要输出首尾空格的过程时导致潜在问题。
这个添加有些令人惊讶,而且没有像适用于二进制数据的那样类似的东西是缺失的

1 答案

+1
by
selected by
 
最佳回答

这是一个好问题,capture最初可以做更多的事情,但逐渐剥离了这些功能,现在它主要和slurp一样。在解析shell调用输出时,我经常需要截断输出,但可能需要在capture(实际上应该是slurp)中实现这个功能并不合适。我认为我们还需要对这个领域进行调整。

...