java process 重定向_java – ProcessBuilder重定向输出

在尝试使用ProcessBuilder在Java中启动Perl脚本并将输出重定向到日志文件时,遇到IOException错误。代码尝试通过>>>操作符将输出追加到日志文件,但引发了'No such file or directory'异常。当只传递'/myScript'时,脚本可以正常运行,但不包含重定向和环境变量设置。问题可能在于命令行参数的构造方式或者日志文件路径的正确性。
部署运行你感兴趣的模型镜像

我试图使用以下代码重定向在ProcessBuilder的帮助下启动的进程的输出

ProcessBuilder pb = new ProcessBuilder("/myScript >> /myLogFile 2>&1

Map env = pb.environment();

env.clear();

env.put("var1", "val1");

env.put("var2", "val2");

pb.redirectErrorStream(true);

Process p = pb.start();

但它失败了例外

Exception in thread “main”

java.io.IOException: Cannot run

program

“/myScript >>

/myLogFile

2>&1

error=2, No such file or directory at

java.lang.ProcessBuilder.start(ProcessBuilder.java:460)

当我传递“/ myScript”时,它工作正常

脚本是perl,任何关于它为什么失败的建议/评论?

我尝试将所有这些作为单独的参数传递,如新的ProcessBuilder(“/ myScript”,“>>”,“/ myLogFile”),它会执行,但它不会重定向到日志文件,也不会使用envVars.

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值