首页 > 解决方案 > 从 String 或 InputStream 读取的 Spawn 进程

问题描述

我正在寻找一种更优雅的方式来做到这一点:

import scala.sys.process._
(Seq("echo", "Mary had a little lamb") #| "code -").!!

在 bash 我会做:

code - <<< Mary had a little lamb

我已经尝试通过一个InputStream并让 Scala 接受它,Source所以Process可以使用它,因为它的stdinalas scalac 不喜欢我提供的东西。

标签: scala

解决方案


你没有包括你的InputStream尝试,所以很难知道这是否是你所追求的(或者它是否足够“优雅”)。

import scala.sys.process._
import scala.language.postfixOps
import java.io.{ByteArrayInputStream => BAIS}
import java.nio.charset.StandardCharsets.UTF_8

val bais = new BAIS("Mary had a little lamb\n".getBytes(UTF_8))

"code -" #< bais !!

推荐阅读