java - 如何用java一步步执行linux shell

标签 java linux shell

Linux(centos 6):

第 1 步

$:yum install xxx

返回一些消息,例如

"Are you OK with your IP being logged? (Y)es/(N)o"

第 2 步

$:Y

安装正在进行。(其他命令可能有步骤 3)

但是我怎样才能用java执行这个命令呢?

这是我的java代码:

String[] commands = new String[]{"yum","install","xxx"};
Runtime run = Runtime.getRuntime();
Process pr = run.exec(commands);
Reader reader = new InputStreamReader(pr.getInputStream());
BufferedReader bf = new BufferedReader(reader);

bf 包括

"Are you OK with your IP being logged?"

现在我如何执行命令(“Y”)以便安装可以继续

请帮助我。

最佳答案

我不知道如何使用“y”(是)执行命令,但您可以按如下方式运行 yum

yum -y install xxx

-y, --assumeyes Assume yes; assume that the answer to any question which would be asked is yes. Configuration Option: assumeyes See: https://linux.die.net/man/8/yum

关于java - 如何用java一步步执行linux shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46686663/

相关文章:

java - 好奇为什么这个递归代码不起作用,并且在另一种方法中表现出非常相似的行为

java - Android Studio 预览与设备不同

java - 过时的 Java 小程序

c - gdb 如何在 linux 上调试多线程守护程序时中断新线程

php - Nginx 找不到 PHP 文件

linux - unix bash - 保存环境变量和循环

bash - 如何将 SIGINT 发送到 shell 脚本?

java - 如何使用数组列表作为准备好的语句参数

php - 如何在 Linux 服务器上使用 PHP CURL 获取图像的有效响应代码?

linux - BASH脚本在需要按键返回提示时调用新脚本