使用Scala的sys.process API调用带引号字符串的命令时遇到问题

时间:2018-05-21 21:43:35

标签: scala command quoting

从以下控制台会话中可以看出,从Scala调用的相同命令产生的结果与在终端中运行时产生的结果不同。

~> scala
Welcome to Scala 2.12.6 (OpenJDK 64-Bit Server VM, Java 1.8.0_172).
Type in expressions for evaluation. Or try :help.

scala> import sys.process._
import sys.process._

scala> """emacsclient --eval '(+ 4 5)'""".!

*ERROR*: End of file during parsingres0: Int = 1

scala> :quit
~> emacsclient --eval '(+ 4 5)'
9

是否有人遇到此问题和/或知道某项工作?

我认为这可能是一个库错误,所以也开了一个问题:https://github.com/scala/bug/issues/10897

1 个答案:

答案 0 :(得分:0)

似乎Scala的sys.process api不支持引用。以下作品:Seq("emacsclient", "--eval", "(+ 4 5)").!