gpt4 book ai didi

Java ProcessBuilder 无法运行简单的脚本

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:38:19 27 4
gpt4 key购买 nike

我有 test.sh 调用一些程序,该程序输出一些行。

我的需求是只捕获最后一行输出

所以如果我做简单的

bash test.sh | tail -n 1  ========> Command 1

然后我收到错误 “Do you want output to go to | or to tail”

为了解决上述问题,我这样做

(bash test.sh) | tail -n 1   =======> Command 2 

然后我得到简单的 1 行日志。到目前为止一切顺利。

现在我需要通过 java 程序调用上面的命令,所以我将 '(' 作为第一个参数传递给 ProcessBuilder 但它提示它无法理解 '(' 作为第一个参数。

如何将 Command 2 传递给 ProcessBuilder 以获取日志的最后一行。

我对 bash 和 linux 不是很熟悉所以请原谅我的无知。我什至不知道为什么 command 1 会出错。

最佳答案

好吧,由于您现在正在使用 Java,因此您可以使用它的“一次编写,到处运行”的特性。编写一个程序,打开一个文件,读取其中的行,并获取最后一行。它适用于任何平台。

一个很好的类是 BuffedReader .

关于Java ProcessBuilder 无法运行简单的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12377536/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com