我知道如何从Android应用程序中执行Shell命令。
shell.exec("ls /");
以及如何从中读取响应
new BufferedReader(new InputStreamReader(_process.getInputStream())).readLine();
但我有一个需要在运行后输入额外用户信息的shell应用程序。我想知道如何向同一个shell命令发送额外的输入。
例如:
cp /abc/ /a/abc/
假设命令需要用户通过输入额外的Y
来确认覆盖,该怎么做?
cp
,然后读取输出,一旦输出包含Do you want to rewrite file
,我就发送响应Y
,这样可行吗?我能够读取和分析响应,但无法发送响应以便它在问题的上下文中理解。如果我使用shell.exec("Y");
会出错。(我知道你可以使用标志来覆盖所有内容,但我每次都必须询问用户)。 - user2570174