12

也许我做错了什么。我正在尝试使用 adb 命令从我的设备中获取文件:

adb pull /mnt/sdcard/deviceinfo.dat C:\

但我总是得到消息:

cannot create 'c:\\deviceinfo.dat': No such file or directory

该文件存在于设备上:

adb shell ls /mnt/sdcard/deviceinfo.dat

返回

/mnt/extsd/deviceinfo.dat

我尝试了一些变体:

adb pull /mnt/sdcard/deviceinfo.dat
adb pull /mnt/sdcard/deviceinfo.dat C:\
adb pull /mnt/sdcard/deviceinfo.dat C:\deviceinfo.dat

但我总是遇到同样的错误。拉的问题在哪里?我以管理员身份运行 cmd.exe。

4

5 回答 5

14

经过几个小时的痛苦,我会回答我自己的问题......

cmd.exe 是使用上下文菜单选项“以管理员身份运行”使用鼠标启动的,但不幸的是命令失败,因为由于某种原因,adb.exe 无法写入本地文件。所以错误:cannot create 'c:\\deviceinfo.dat' ...

现在正确的步骤:

1 - Windows key (focus on search textbox)
2 - Type cmd.exe (it find cmd.exe obviously)
3 - CTRL+SHIFT+ENTER (to run as Administrator)
4 - adb shell ls /mnt/sdcard/deviceinfo.dat (works fine now!)

我不明白为什么在上下文菜单上使用“以管理员身份运行”(右键单击我的 Win7 栏上的命令提示符图标后)不能按预期工作。

于 2012-07-17T09:48:37.823 回答
5

我通过在您的目标路径中创建一个文件夹来解决相同的问题。例如,adb pull /sdcard/a.txt D:\您将收到错误消息。在D:\创建一个临时文件夹,然后使用adb pull /sdcard/a.txt D:\temp,一切正常!这个问题是在 adb 1.0.36 版本中发现的。

于 2017-02-08T01:03:26.593 回答
1

确保文件/子文件夹不包含非法字符。就我而言,有文件和文件夹:的名称。

于 2019-01-25T15:02:55.663 回答
0

也可能是文件已经存在于您想要将其拉到的位置并且正在使用或写保护,因此无法被覆盖。

于 2016-02-24T21:20:31.710 回答
-1

您需要检查您传递的每个文件是否有效,例如:

--in your command cmd.

--cd c: press enter

--cd mnt press enter.

--cd sdcard press enter.

--deviceinfo.dat

那么你将能够得到你想要的。

于 2012-07-17T09:37:35.907 回答