【发布时间】:2016-07-22 10:57:19
【问题描述】:
我正在寻找的是这种在 Windows 命令行下的命令行交互:
C:\temp1>clj some_script.clj
C:\temp2>
其中 some_script.clj 包含以下内容:
(cd "c:\\temp2")
所以问题是 - 我如何实现函数 cd?已经尝试过clojure.java.shell,但它看起来不像我需要的lib。这可能是一个简单的问题,问题可能是我不会流利的Java?!
【问题讨论】:
-
clj some_script.clj在另一个进程中执行,因此它无法更改终端会话的当前目录。无论使用哪种语言,您都无法为所欲为。 -
您可以使用 shell 脚本来完成。而且我确信必须有一种方法可以侵入父进程并以某种方式从另一个进程更改当前目录,但我想这并不容易/实用。
-
如果您*在当前会话中加载* shell 脚本,您可以这样做;仅仅执行脚本是行不通的。
-
如果我们还在谈论 Windows 命令行(批处理脚本),那么它确实有效。在香草 bash 中它没有。
-
对;我读得太快了,没有看到这是一个特定于 Windows 的问题。
标签: command-line clojure