使用root命令设备上的su命令复制文件和目录

时间:2015-04-26 09:31:56

标签: android root su

这里经常会问类似的问题,但我无法弄明白,我到底要做什么。这不是重复,因为这里的许多线程的解决方案不是我想要的或不适合我。我想将文件和目录复制到/data/文件夹中的文件夹。所以,我在搜索SO和谷歌搜索了很多时间。但是我发现的所有线程都不够清晰,不让我得到我想要的东西。我也找到了这个博客,但这并没有帮助我。

http://su.chainfire.eu/

http://forum.xda-developers.com/showthread.php?t=1694251

我尝试了什么

我能够将目录从/data/目录复制到sd,而不需要su命令,并且它只适用于java代码。第一个问题:从/data/文件夹复制到SD卡是否不需要root权限? 我已经完成的下一步是执行这样的su命令:

Process pp  = Runtime.getRuntime().exec("su cat "+originDir+" > "+targetDir);

其中orginDir是来自文件的SD卡上的路径,而targetDir是/data/目录中Strings的文件夹,例如:

/data/test/testfile.txt

这里的问题是,我可以复制这个文件,但它有0字节。那么我做错了什么?

我想要什么

  1. 我想将文件从SD卡复制到/data/目录
  2. 我想在/data/目录
  3. 上创建一个文件夹
  4. 我想将整个目录复制到/data/目录
  5. 我搜索了很多,但是我找不到使用su命令将文件写入该目录的好教程。此外,是否有一个列表可以以编程方式执行所有Android中可用的su命令?相信我,我不是一个懒惰的开发人员,我搜索了很多东西,但我没有找到一个很好的教程。

1 个答案:

答案 0 :(得分:1)

使用复制linux命令并添加-r(递归)切换到它cp -r /source/ /target/。如果目标不存在,它将创建目标

但在此之前,您需要使您的系统可写

mount -o remount,rw /system 
cp -r /source/ /target/
mount -o remount,ro /system #Don't forget to do this, even if everything else fails!!!!

编辑:根据以下评论,此解决方案仅应在定位相对较新的设备时使用