首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在scala中执行嵌套Unix命令

无法在scala中执行嵌套Unix命令
EN

Stack Overflow用户
提问于 2019-06-19 14:18:02
回答 1查看 114关注 0票数 0

我试图列出aws s3中的文件夹,并只从其中获取文件名。嵌套的unix命令不会在shell和抛出错误中执行。我知道通过导入org.apache.hadoop.fs._,我们还有其他方法可以做到这一点

我正在尝试的命令是:

代码语言:javascript
复制
import sys.process._

var cmd_exec = "aws s3 ls s3://<bucket-name>/<folder-name>/"

cmd_exec !!

如果我通过嵌套ls的剪切命令来执行它。是扔错了。

代码语言:javascript
复制
import sys.process._

var cmd_exec = "aws s3 ls s3://<bucket-name>/<folder-name>/ | cut -d' ' -f9-"

cmd_exec !!

错误信息:未知选项:x,cut,-d',',-f9- java.lang.RuntimeException:非零退出值: 255

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-19 14:53:21

AFAIK这是自然的。

代码语言:javascript
复制
import scala.sys.process._
   val returnValue: Int = Process("cat mycsv.csv | grep -i Lazio")!

上面的代码也不能工作..。

|是重定向操作符,以执行另一个命令。所以不是那个..。捕获输出并再执行一次。

你也可以看到这个文章- Scala shell脚本示例。其中scala程序可以作为shell脚本执行..。可能会有用的。

蒂!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56669889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档