如何输入从java代码运行的终端命令的输入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何输入从java代码运行的终端命令的输入相关的知识,希望对你有一定的参考价值。

我知道,我的英语不好。非常遗憾。所以我试着用一个例子来解释。

我必须做5-6个例子,我会告诉你其中一个。如果有人知道如何做逻辑并回答我,那就太好了。

String cmd = "openssl enc -aes-256-cbc -e -in " + path + " -out " + path+"_E";
Process pb = Runtime.getRuntime().exec(cmd);
pb.waitFor();

如果我手动在终端输入此代码,它会询问我加密密码,我将进入。之后,它要求我重新输入加密密码,我将进入。

我想要的是,我可以处理从java代码输入和重新输入内容吗?我想从java自动输入。

PS:我不想禁用密码!我想从java代码输入。

谢谢你的回答。

答案

你可以通过java处理它。看这篇文章User input to the command line when using Runtime.getRuntime().exec(command);

正如在该帖子中提到的,您可以重定向进程的输出流并使用以下命令从Java发送命令:

out = p.getOutputStream();
out.write("fooUsername
".getBytes());
out.flush();

以上是关于如何输入从java代码运行的终端命令的输入的主要内容,如果未能解决你的问题,请参考以下文章

如何使用swift从Xcode coco app运行像FFMPEG这样的终端程序?

Python从入门到进阶3运行python代码

Python从入门到进阶3运行python代码

如何运行文本文档编程命令

VSCode自定义代码片段——cli的终端命令大全

VSCode自定义代码片段4——cli的终端命令大全