java Runtime.exec() 执行问题
2015-07-15 17:11
453 查看
Runtime.exec() 不等同于直接执行command line命令!
Runtime.exec()很有局限性,对有些命令不能直接把command line里的内容当作String参数传给exec().
比如重定向等命令。举个例子:
javap -l xxx > output.txt
这时要用到exec的第二种重载,即input 参数为String[]:
Process p = Runtime.getRuntime().exec(new String[]{"/bin/sh","-c","javap -l xxx > output.txt"});
rm -rf name*
Process p = Runtime.getRuntime().exec(new String[]{"/bin/sh","-c","rm -rf name*"});
Runtime.exec()很有局限性,对有些命令不能直接把command line里的内容当作String参数传给exec().
比如重定向等命令。举个例子:
javap -l xxx > output.txt
这时要用到exec的第二种重载,即input 参数为String[]:
Process p = Runtime.getRuntime().exec(new String[]{"/bin/sh","-c","javap -l xxx > output.txt"});
rm -rf name*
Process p = Runtime.getRuntime().exec(new String[]{"/bin/sh","-c","rm -rf name*"});
相关文章推荐
- java web每天定时执行任务
- java 命令参数知识
- java的线程通信
- JAVA常用类总结
- 解决Struts中文乱码问题总结
- MyEclipse快捷键大全
- eclipse 设置系统变量和运行参数
- Java中Runnable和Thread的区别
- 解决struts2过滤器冲突的简单方法
- eclipse clean up与formatter的区别
- eclipse Package, Source folder, folder认识
- 简述上转型对象和接口回调
- Java ArrayList、Vector、LinkedList 异同
- java写的控制台万年历
- java汉字转拼音
- spring annotation注解@Component 通用:@Controller,@ Service,@ Repository区别
- eclipse Code Style设置
- eclipse 代码格式化的必要性
- 深入浅出 Java Concurrency (7): 锁机制 part 2 AQS
- struts2 CVE-2014-0050(DoS), CVE-2014-0094(ClassLoader manipulation) S2-20 DoS attacks and ClassLoader manipulation