shell - 从特定位置在 Clojure 中运行 shell 命令

标签 shell clojure

我想读取 shell 命令的输出。
我要读取的 shell 命令必须从特定位置运行。 (它是 git log )。

除了 cd 之外,还有其他好的方法可以做到这一点吗?进入位置,运行 (clojure.java.shell/sh "git log") ,然后 cd回到工作目录?

我正在寻找某种 (shell-at directory command)功能。此功能的简单实现也将受到赞赏。我对 Clojure 的经验很少。

最佳答案

clojure.java.shell/sh支持 :dir设置子进程的工作目录的选项:

(clojure.java.shell/sh "git" "log" :dir "/path/to/some/directory")

here .

关于shell - 从特定位置在 Clojure 中运行 shell 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12291351/

相关文章:

linux - 简单 bash 循环的意外错误 $'do\r'

bash - 在 bash 中,退出脚本而不退出 shell 或从子 shell 中导出/设置变量

python - 为什么egrep的stdout没有通过管道?

mysql - 如何修复命令 "mysql -v"上的错误

python - 将命令式算法转换为函数式算法

java - 如何在 Clojure 中模拟 Java 对象

clojure - 为什么这个循环函数比 map 慢?

linux - Bash,同时运行多个命令,等待 N 完成后再生成更多命令

Scala 等价于 F# 中的 |> 或 Clojure 中的 ->>

clojure - 在 Clojure 中创建 Java 枚举以实现 Java 互操作