gpt4 book ai didi

android - 通过 ADB 以 root 身份启动脚本

转载 作者:IT老高 更新时间:2023-10-28 22:16:09 25 4
gpt4 key购买 nike

我创建了一个脚本来挂载分区并在我的 Android 系统中执行一些操作。我将脚本作为 install.sh 保存在 Android 的/bin 文件夹中。

我想从 ADB 调用脚本,该脚本本身是从 Windows 上的批处理文件调用的,但需要以 root 身份执行。

我尝试的第一个解决方案是调用脚本使用

adb shell "su -c sh /bin/script.sh"

但它不起作用,因为它为我提供了 shell 访问权限(具有 root 权限),但没有执行任何操作。我也试过打电话

adb root "sh /bin/script.sh"

但我收到以下错误

adbd cannot run as root in production builds

然后我试着写

su -c "command"

对于我的脚本中需要 root 访问权限的所有命令,但我有同样的问题。当我运行脚本时,我只获得了一个 root shell,没有执行任何操作。

如果我手动使用第一个解决方案(例如,我调用 adb shell su,然后调用我的脚本),它就可以工作。然而,重点是自动化该过程,以便可以从另一个脚本调用 adb shell。

你知道我是如何做到这一点的吗?

谢谢!

最佳答案

这对我有用:

创建 myscript.bat 并放入其中(注意要在 super 用户模式下执行的命令周围的单引号):

adb shell "su -c 'command1; command2; command3'"

然后从 DOS shell 运行 myscript.bat。

注意:DOS 行继续符 (^) 在这种情况下似乎不起作用。换句话说,以下内容对我不起作用:

adb shell "su -c '^
command1; ^
command2; ^
command3'"

这会导致“语法错误:未终止的带引号的字符串”

关于android - 通过 ADB 以 root 身份启动脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8761992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com