【发布时间】:2011-06-04 20:30:26
【问题描述】:
所以我希望能够编写一个可以打开和显示 logcat 消息、dmesg 的应用程序,并且还能够运行诸如 'ls' 'cat' 'echo' 'cd' 之类的命令。
如果我执行以下操作:
nativeProc = Runtime.getRuntime().exec("ls\n");
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(nativeProc.getOutputStream()));
BufferedReader in = new BufferedReader(new InputStreamReader(nativeProc.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
full = full + "\n" + line;
}
我可以将文本“完整”放入文本视图并查看根目录。
不过,我能做的也就这么多了。假设我想找到一个目录,然后切换到它,我遇到了麻烦。
如果我这样做:
nativeProc = Runtime.getRuntime().exec("ls\n");
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(nativeProc.getOutputStream()));
BufferedReader in = new BufferedReader(new InputStreamReader(nativeProc.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
full = full + "\n" + line;
}
/* Code here to confirm the existing of a directory*/
nativeProc = Runtime.getRuntime().exec("cd tmp\n");
BufferedReader in2 = new BufferedReader(new InputStreamReader(nativeProc.getInputStream()));
line = null;
String test = "\nStart1:\n";
while ((line = in2.readLine()) != null) {
test = test + "\n" + line;
}
“完整”和“文本”都没有得到任何结果
有什么想法吗?
【问题讨论】:
标签: android command-line terminal runtime.exec