java运行shell命令,chmod 777 xxx,改变权限无效的解决的方法。
在java程序中运行shell命令,改变文件的权限。能够在命令行中运行
chmod 777 <span style="font-family: Arial, Helvetica, sans-serif;">/data/misc/123.sh"</span>
来改变权限,可是在java代码中运行这个命令时使用
Runtime.getRuntime().exec("chmod 777 /data/misc/123.sh");
无效,使用
String[] command = new String[] {"/system/bin/sh","-c","chmod 777 /data/misc/123.sh"};
Runtime.getRuntime().exec(command);
相同无效
最后通过实例化一个dataoutputstream对象,在这个对象的写字节方法里写命令才实现,代码例如以下:
String[] commands = new String[] { "/system/bin/sh", "-c",
			"chmod -R 777 /data/misc/123.sh" };
	Process process = null;
	DataOutputStream dataOutputStream = null;
try {
			process = Runtime.getRuntime().exec("su");
			dataOutputStream = new DataOutputStream(process.getOutputStream());
			int length = commands.length;
			for (int i = 0; i < length; i++) {
				dataOutputStream.writeBytes(commands[i] + "\n");
			}
			dataOutputStream.writeBytes("exit\n");
			dataOutputStream.flush();
			process.waitFor();
		} catch (Exception e) {
		} finally {
			try {
				if (dataOutputStream != null) {
					dataOutputStream.close();
				}
				process.destroy();
			} catch (Exception e) {
			}
		}
java运行shell命令,chmod 777 xxx,改变权限无效的解决的方法。的更多相关文章
- Ubuntu设置目录的读写权限(Linux命令chmod 777 dirName)
		更改文件所有者 sudo chown system_username /location_of_files_or_folders 更改文件的权限 鼠标右按钮点击文件/目录 -> 属性 权限 分页 ... 
- Linux 文件rwx权限问题  chmod 777 XXX 任何人拥有最高权限
		在Unix和Linux的各种操作系统下,每个文件(文件夹也被看作是文件)都按读.写.运行设定权限.ls -l:得到-rw-r--r-- 1 apple users 2254 2006-05-20 13 ... 
- java 执行shell命令及日志收集避坑指南
		有时候我们需要调用系统命令执行一些东西,可能是为了方便,也可能是没有办法必须要调用.涉及执行系统命令的东西,则就不能做跨平台了,这和java语言的初衷是相背的. 废话不多说,java如何执行shell ... 
- java 执行shell命令遇到的坑
		正常来说java调用shell命令就是用 String[] cmdAry = new String[]{"/bin/bash","-c",cmd} Runtim ... 
- 让你提前认识软件开发(23):怎样在C语言中运行shell命令?
		第1部分 又一次认识C语言 怎样在C语言中运行shell命令? [文章摘要] Linux操作系统具备开源等诸多优秀特性,因此在很多通信类软件(主流开发语言为C语言)中,开发平台都迁移到了Linux上, ... 
- PHP 反引号运行Shell命令,C程序
		/********************************************************************* * PHP 反引号运行Shell命令,C程序 * 说明: ... 
- java运行jar命令提示没有主清单属性和找不到主类
		推荐一个java运行jar命令提示没有主清单属性的百度经验的链接:https://jingyan.baidu.com/article/db55b60990f6084ba30a2fb8.html jav ... 
- java运行Linux命令
		<%@ page language="java" import="java.util.*,java.io.*" pageEncoding="UT ... 
- java基础/java调用shell命令和脚本
		一.项目需求: 从某一机构获取证书,证书机构提供小工具,执行.sh脚本即可启动服务,本地调用该服务即可获取证书. 问题:linux服务器启动该服务,不能关闭.一旦关闭,服务即停止. 解决方案:java ... 
随机推荐
- getAllResponseHeaders() 必须放到onload里面
			<html><head> <meta charset="utf-8"> <title>test</title> < ... 
- WCF+Windows2008&&sqlserver2008
			这些在我的文件和云盘当中也可以在csdn中查找 
- gvim 编辑器配置
			"关才兼容模式 set nocompatible "模仿快捷键,如:ctrt+A 全选.Ctrl+C复制. Ctrl+V 粘贴等 source $VIMRUNTIME/vimrc_ ... 
- 一个纠结的Linux定时任务
			昨天写了一个Linux定时任务,搞了半天才是搞好,现在分享下我犯得错误 首先在Linux根目录下创建一个目录 mkdir cat_crazy 进去创建一个shell脚本test.sh,内容是: #!/ ... 
- upm配置文件
			组件配置说明 Ø 配置文件规范 Ø 组件分为公共组件和私有组件,分别在public段和private段,如下所示. <?xml version="1.0" encoding= ... 
- 【数据结构】 最小生成树(四)——利用kruskal算法搞定例题×3+变形+一道大水题
			在这一专辑(最小生成树)中的上一期讲到了prim算法,但是prim算法比较难懂,为了避免看不懂,就先用kruskal算法写题吧,下面将会将三道例题,加一道变形,以及一道大水题,水到不用高级数据结构,建 ... 
- centos7 crontab管理
			crontab -l 当前用户的任务 crontab -e 编辑任务列表 crontab -r 删除当前用户的任务 
- 苹果Itools
			韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 
- Standard - 多线程基本概念面试题待整理
			http://blog.csdn.net/dazhong159/article/details/7948327 http://z-jiankun.iteye.com/blog/1408471 http ... 
- Socket读取页面
			http://www.knowsky.com/363189.html http://hi.baidu.com/myyers/item/f90fa3f57d89e1d243c36a34 http://h ... 
