ErG*_*404 25 shell android root adb
我已经创建了一个脚本来安装分区并在我的Android系统中执行一些操作.我将脚本保存为Android的/ bin文件夹中的install.sh.
我想从ADB调用脚本,它本身是从Windows上的批处理文件调用的,但它需要以root身份执行.
我尝试的第一个解决方案是使用调用脚本
adb shell "su -c sh /bin/script.sh"
Run Code Online (Sandbox Code Playgroud)
但它不起作用,因为它给我一个shell访问权限(具有root权限),但没有执行任何操作.我也试着打电话
adb root "sh /bin/script.sh"
Run Code Online (Sandbox Code Playgroud)
但我得到以下错误
adbd cannot run as root in production builds
Run Code Online (Sandbox Code Playgroud)
然后我试着写
su -c "command"
Run Code Online (Sandbox Code Playgroud)
对于我的脚本中需要root访问权限的所有命令,但我遇到了同样的问题.当我运行脚本时,我只获得了一个root shell,并且没有执行任何操作.
如果我手动使用第一个解决方案(例如我调用adb shell su,然后是我的脚本),它就可以了.但是,重点是自动化该过程,以便可以从另一个脚本调用adb shell.
你知道我怎么能做到这一点吗?
谢谢 !
And*_*nie 57
这对我有用:
创建myscript.bat并放入其中(注意要在超级用户模式下执行的命令的单引号):
adb shell "su -c 'command1; command2; command3'"
Run Code Online (Sandbox Code Playgroud)
然后从DOS shell运行myscript.bat.
注意:似乎DOS行继续符(^)在这种情况下不起作用.换句话说,以下内容对我不起作用:
adb shell "su -c '^
command1; ^
command2; ^
command3'"
Run Code Online (Sandbox Code Playgroud)
这导致"语法错误:未终止引用的字符串"
| 归档时间: |
|
| 查看次数: |
76900 次 |
| 最近记录: |