您好,我需要将 data/tombstones
的内容复制/移动到 sdcard/tombstones
我正在使用以下命令:
mv data/tombstones /sdcard/tombstones
"failed on 'tombstones' - Cross-device link"
但我遇到了错误。
最佳答案
你有一个健全的 mv 命令版本
从 xda 的 lbcoder 和 androidforums 的 darkxuser 转述几位
"failed on 'tombstones' - Cross-device link"
这意味着您不能在一个设备(文件系统)上创建指向不同文件系统上的文件的硬链接(hard link)。
这是一个古老的 unix 事物。您不能使用大多数 mv 实现跨文件系统移动文件。 mv 不是为了将数据从设备复制到设备,它只是更改文件在分区内的位置。 由于/data 和/sdcard 是不同的分区,所以失败了。
认为你自己很幸运,你有一个 SANE 版本的 mv 命令,它无论如何都不会尝试 - 一些旧版本实际上会尝试这样做,这将导致指向 NOTHING 的硬链接(hard link)和原始数据无法访问。
The mv command does NOT MOVE THE DATA!!! It moves the HARDLINK TO THE DATA.
如果要将文件移动到不同的文件系统,则需要使用“cp”命令。复制该文件以在不同的文件系统上创建它的 SECOND COPY,然后使用“rm”命令删除旧的。
一个简单的移动命令:
#!/bin/bash
dd if="$1" of="$2"
rm -f "$1"
您会注意到“cp”命令根据复制是否成功返回真或假,因此只有在文件复制成功时才会删除原始文件。
或
#!/bin/bash
cat data/tombstones > sdcard/tombstones
rm data/tombstones
可以将这些脚本复制到 PATH 变量引用的某个位置并设置可执行文件。
不同的接口(interface)
If you need a different interface from adb you may move files using the FileExplorer in DDMS View.
旁注:
您可以在以下情况下将文件移动到文件夹中:
- 你是
root
; - 这是你的应用目录;
- 您已使用
adb
或其他地方的chmod
更改权限
关于android - 如何在不使用 adb 的情况下将数据的内容/复制到 sdcard/?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3555755/