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

MRo*_*lin 22 shell clojure

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

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

我正在寻找某种(shell-at directory command)功能.还将理解该功能的简单实现.我对Clojure的经验很少.

Dav*_*Ray 29

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

(clojure.java.shell/sh "git" "log" :dir "/path/to/some/directory")
Run Code Online (Sandbox Code Playgroud)

看到这里.