adb pull - >找不到设备

Ost*_*tan 18 shell android root adb

我有一个root用户手机,并以root方式运行adb.

我用adb shell成功访问了手机.

我可以浏览directorys,甚至是那些需要root的人.

当我尝试使用时:

adb pull /data/data/my.app.path/databases/mydatabase.db /home/admin/Desktop/
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

error: device not found
Run Code Online (Sandbox Code Playgroud)

adb shell保持连接,我可以继续浏览SD卡.

任何人都可以告诉我这个错误来自哪里以及如何修复它来拉动文件?

Vis*_*nan 41

在此过程中远离壳adb pull.


Fir*_*ord 9

似乎没有人提供解释.

该错误与以root身份运行的adb无关.adb pull在Android内部运行时,需要将Android设备(运行adb服务器)连接到主Android设备作为slave,这当然不存在,因此出现错误.

但是,如果您通过OTG将主要Android设备连接到另一台设备并且开始充电(成为从属设备),则可以从Android内部成功运行该命令.通过这种方式,您实际上可以adb shell从主Android内部进行操作.

否则,您可以在设备或其他设备上以TCP模式运行ADB,并adb connect <IP:PORT>从主设备的shell内部连接到localhost或其他设备的shell.

即使这样,您的命令adb pull /data/data/my.app.path/databases/mydatabase.db /home/admin/Desktop/也会失败,因为/homeAndroid中没有目录概念,因此,目标在Android中根本不存在.

虽然您已经知道,但是您必须回到PC的shell,以便可以将主设备视为从设备或服务器,并且您的命令将成功运行(读者:此命令需要root才能运行).