gpt4 book ai didi

string - 如何将字符串向量传递给 clojure 中的 java.shell?

转载 作者:行者123 更新时间:2023-12-04 18:23:30 25 4
gpt4 key购买 nike

我正在尝试利用 (require [clojure.java.shell :refer [sh]]) 在 clojure 中执行 rsync 备份。函数 sh 将字符串作为参数,例如:

(sh "ls" "-las" "/home/")

但是,我发现自己将数据作为字符串向量(例如 ["ls""-las""/home/"])到达 sh,这当然会失败。这似乎是一个非常容易解决的问题,但我刚刚开始使用 clojure(以及 lisp 和函数式编程),我似乎无法让它工作。我如何处理传递给 sh 的向量?

如有任何建议,我们将不胜感激。

最佳答案

听起来你需要使用 apply :

(apply sh arg-vector)

apply 函数也出现在其他 LISP 中,允许您将参数列表传递给给定函数。在 Clojure 中,您不仅限于列表,还可以使用任何 seq -able 对象,包括向量。

关于string - 如何将字符串向量传递给 clojure 中的 java.shell?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12344058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com