2012-09-06 37 views
21

我想讀取shell命令的輸出。 我想讀取的shell命令必須從特定位置運行。 (它是git log)。從特定位置在Clojure中運行shell命令

是否有一個很好的方式來執行此操作,而不是cd ing進入位置,運行(clojure.java.shell/sh "git log"),然後cd回到工作目錄?

我在找某種(shell-at directory command)函數。此功能的簡單實現也將被讚賞。我的Clojure經驗很少。

回答

28

clojure.java.shell/sh支持:dir選項設置子進程的工作目錄:

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

here

+0

完美。謝謝! – MRocklin