使用重定向

时间:2015-07-16 19:27:57

标签: android redirect adb root

我需要向adb shell发送命令以自动执行某些调试,但问题是我还需要通过su提供的提升权限。我的第一个想法是使用简单的文件重定向:

commands.txt中

ls -l > /sdcard/dirListing.txt
exit

>> adb shell < commands.txt

这种方法效果很好,但我们仅受限于shell可用的权限,并且没有将自己提升为root。所以,我认为这就像添加一条额外的行来提供这些特权一样简单。

commands.txt中

su
ls -l > /sdcard/dirListing.txt
exit

>> adb shell < commands.txt
su
ls -l > /sdcard/dirListing.txt
exit
exit

注意:添加了第二个退出,因为在使用su提升自己之后,第一次调用exit会使您恢复原来的权限,而不是终止会话。

然而,结果远非正确。我想,几乎有效。 dirListing.txt文件已正确生成,但正如您所看到的,我们留下了一个无法与之交互的shell提示符。我只能假设这是因为我们已将输入重定向到文本文件,尽管adb可能无法正确处理此高程并且shell已挂起。

此输出也很难遵循。

su
ls -l > /sdcard/dirListing.txt
exit
exit
shell@klte:/ $ su
ls -l > /sdcard/dirListing.txt
exit
exit
ls -l > /sdcard/dirListing.txt
exit
exit
root@klte:/ # ls -l > /sdcard/dirListing.txt
root@klte:/ # exit
shell@klte:/ $

有关如何使其正常工作的任何想法?

0 个答案:

没有答案