Android App运行命令递归

时间:2011-04-28 05:16:56

标签: java android runtime

嗨,所以我正在编写一个小应用程序,运行一些脚本,我写的脚本都存储在一个目录中,脚本偶尔会更改,有些会根据我的服务器不时删除/添加,所以我需要从应用程序运行命令以递归方式chmod目录中的所有文件,然后运行脚本我正在使用以下代码来chmod文件,但无法弄清楚如何对文件中的所有文件执行此操作目录

感谢您的帮助

//Code to chmod the file
execCommand("busybox chmod 755 ");

//execCommand Method
public Boolean execCommand(String command) {
        try {
            Runtime rt = Runtime.getRuntime();
            Process process = rt.exec("su");
            DataOutputStream os = new DataOutputStream(process.getOutputStream()); 
            os.writeBytes(command + "\n");
            os.flush();
            os.writeBytes("exit\n");
            os.flush();
            process.waitFor();
           } catch (IOException e) {
              return false;
              } catch (InterruptedException e) {
              return false;
              }
              return true;
              }

1 个答案:

答案 0 :(得分:0)

我的设备上的

busybox chmod接受-R recurse标志

或者你可以这么做:

busybox似乎没有足够完整的xargs命令(使用替换字符串选项)来处理chmod,希望将文件作为其最后一个参数而不是它的第一个参数。

这适用于我的:

busybox find |读取f;做chmod 755 $ f;完成

你或许可能没有;特别是,我不完全确定谁正在运行while循环 - busybox或工具箱。在我最近玩的一个供应商 - 股票图像设备上,而循环不起作用。它没找到......