【问题标题】:adb.exe: unknown command am adb.exe: unknown command sleep error keeps poping up when am trying to run the shell script on my rooted android deviceadb.exe: unknown command am adb.exe: unknown command sleep error 当我试图在我的 root android 设备上运行 shell 脚本时不断弹出
【发布时间】:2021-04-30 16:04:41
【问题描述】:

大家好,刚接触 shell 脚本。如果表现得像个菜鸟,请不要介意。

当我尝试在我的安卓设备上运行 shell 脚本时,不断弹出以下错误

    #!/bin/bash
for i in $(seq 100) 
do  
echo "Time: $i"
adb -s $* shell am start com.android.camera/.Camera -W -S
adb -s $* shell sleep 3
adb -s $* shell input tap 540 1994
adb -s $* shell input tap 540 1994
adb -s $* shell input tap 540 1994
count=`adb -s $* shell ls /sdcard/DCIM/Camera/ | wc |awk '{print $1}'`
echo Count: $count
if [[ count -gt 500 ]]; then
break
fi
adb -s $* reboot
adb -s $* wait-for-device
adb -s $* shell sleep 40
adb -s $* shell input tap 500 1200
done

结果: adb.exe:未知命令 am adb.exe:未知命令休眠

【问题讨论】:

标签: android bash shell scripting


【解决方案1】:

你不能在你的安卓设备上运行 adb 命令。相反, adb 二进制文件必须安装在主机上。该脚本是一个 linux 脚本,不能从 windows 运行。准备可启动的 USB 闪存驱动器并从任何 linux 终端运行此脚本

此外,您的某些命令需要 root 权限。因此sush 必须被邀请(并且在触摸屏上的超级用户应用程序上授予权限)

adb shell su -c "am start com.android.camera/.Camera -W -S"

awk 在安卓上不可用。为了更清楚地表明这些管道实际上是在主机上运行的,请引用 android 命令(或者甚至更好地避免使用 awk)

count=$(adb shell "ls -1 /sdcard/DCIM/Camera" | wc | awk '{print $1}')
count=$(adb shell "ls -1 /sdcard/DCIM/Camera | wc -l")

am 实际上是一个指向am.jar 的shell 脚本,这需要完全启动的android。如果您尝试在恢复模式下运行,您至少应该运行框架

猜你喜欢
  • 2011-04-11
  • 2021-07-10
  • 2023-02-26
  • 1970-01-01
  • 1970-01-01
  • 2018-09-06
  • 2016-03-09
  • 1970-01-01
  • 2020-06-12
相关资源
最近更新 更多