gpt4 book ai didi

java - Android 应用程序递归运行命令

转载 作者:行者123 更新时间:2023-12-01 05:46:28 25 4
gpt4 key购买 nike

嗨,我正在编写一个小应用程序,它运行一些我编写的脚本,这些脚本都存储在一个目录中,并且脚本偶尔会发生变化,其中一些脚本会根据我的服务器不时删除/添加,所以我需要从应用程序运行命令,以便在运行脚本之前递归地 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;
}

最佳答案

我的设备上的 busybox chmod 接受 -R 递归标志

或者你可以用困难的方式做到这一点:

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

这适用于我的:

busybox 查找 |当读 f 时;执行 chmod 755 $f ;完成

它可能适合也可能不适合你;特别是,我不完全确定谁在运行 while 循环 - busybox 或 toolbox。在我最近使用的一台供应商库存图像设备上,while 循环不起作用。也没有找到...

关于java - Android 应用程序递归运行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5813948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com