Scalaスクリプトからシェルコマンドを実行する必要があり、そのために次のスニペットを使用します。
import scala.sys.process.{Process, ProcessIO}
val command = "ls /tmp"
val process = Process(command)
val processIO = new ProcessIO(_ => (),
stdout => scala.io.Source.fromInputStream(stdout).getLines.foreach(println),
_ => ())
process.run(processIO)
コードは正常に機能します。なぜ私が得るのだろうか
java.io.IOException: Cannot run program "cd": error=2, No such file or directory
IMOが?cd /tmp && ls
に相当するコマンドを変更するとすぐにls /tmp