Android 无cp命令 mv引起cross-device link

Andorid命令行里没有cp命令(我一直未能明白为何不将该命令集成进去?),实际上安装上busybox之后就可以有cp命令了.

安卓有mv这一条命令,那为什么不直接输入mv /sdcard/test.mp3 /system/meida/audio/test.mp3呢? 好,那我们试一下该命令,得到答复是:“failed on '/sdcard/test.mp3' - Cross-device link”,也就是说mv命令不允许将存储卡中的文件复制到/system/或/data/分区中,因为两者被认为是在不同的设备上。

所以需要采用 cat命令,查一下cat的用法:cat [选项]... [文件]... ,其作用是将[文件]或标准输入组合输出到标准输出。平常工作时偶尔会用到cat命令去显示文本文件的内容,然后又想到了重定向符'>',所以两者 一结合,就自然则然地想到是否可以通过将cat的文件输出到指定位置来代替cp的功能?通过尝试发现确实可以,不过我不清楚Linux系统下cp命令的实 现细节,回头去查一下看。前已叙及有了su命令及可写的分区,基本可以为所欲为了,所以曲线将文件复制到/system/或/data/分区后,如果文件 权限/用户名/组不符合,就可以通过chmod和chown命令进行更改。

直接敲入命令 cat /sdcard/test.mp3 >/system/media/audio/test.mp3


原文链接:http://www.cnblogs.com/dongzhiquan/archive/2012/12/03/2800512.html

原文地址:https://www.cnblogs.com/xieyuan/p/3787350.html