You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用scala.sys.process执行dir命令报找不到文件错误的问询

问题原因
  • dir是Windows系统cmd.exe的内置命令,不是独立的可执行程序,scala.sys.process调用命令时默认会直接查找系统环境变量路径下的可执行文件,找不到dir对应的可执行程序,因此抛出该错误。
解决方案

Windows平台调用内置命令写法

需要显式指定通过cmd.exe执行dir命令,/c参数表示命令执行完成后自动退出cmd进程,修改后代码如下:

import scala.sys.process._
val res = "cmd /c dir".!
println(res)

类Unix平台(Linux/macOS)兼容写法

如果是在类Unix平台下运行,目录列举命令ls为独立可执行文件,可以直接调用:

import scala.sys.process._
val res = "ls".!
println(res)

如果需要实现跨平台兼容的命令调用逻辑,可以先判断当前运行的操作系统类型,再选择对应命令和执行方式。


内容的提问来源于stack exchange,提问作者kailing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:21:00