java cd命令_java执行cd命令
如果要在java程序里执行一条linux可以用下面的写法
Process process = Runtime.getRuntime().exec(cmd);process.waitFor();
但是当遇到像cd这样的命令时,上面的这种写法切不管用,很多时候我们以为是命令输错了或是文件找不到。
现在提供一种新的执行命令方法:
File wd = new File("/bin");
System.out.println(wd);
Process proc = null;
try {
proc = runtime.getruntime().exec("/bin/bash", null, wd);
} catch (IOException e) {
e.printStackTrace();
} if (proc != null) {
BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(proc.getOutputStream())), true);
out.println("cd .."); //执行该语句后返回上一级目录
out.println("pwd"); //打印当前目录
out.println("java -jar xxx.jar");//执行该目录下的jar文件,Linux下执行jar文件必须进入其所在的文件夹
out.println("exit");
try { String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
proc.waitFor(); i
n.close();
out.close();
proc.destroy();
} catch (Exception e) {
e.printStackTrace();
}
}
这种写法相当于把整个bash环境拿进来了,out.println只要输入你需要执行的命令就行。
看上去很复杂,其实很实用,只要能在命令行执行的命令,都可以拿来试试。
java cd命令_java执行cd命令相关推荐
- java代码执行linux命令_java执行Linux命令的方法
本文实例讲述了java执行Linux命令的方法.分享给大家供大家参考.具体实现方法如下: public class StreamGobbler extends Thread { InputStream ...
- java阻塞执行命令_java执行bat命令碰到的阻塞问题的解决方法
使用Java来执行bat命令,如果bat操作时间过长,有可能导致阻塞问题,而且不会执行bat直到关闭服务器. 如: Runtime r=Runtime.getRuntime(); Process p= ...
- java连接linux服务器执行shell命令(框架分析+推荐)
java连接linux服务器执行shell命令(框架分析+推荐) 一.分类+连接方式 程序打成jar包,在本地服务器上执行shell命令.这种使用MyRuntimeUtil工具类 java程序远程li ...
- 不是内部或外部命令 windows10 执行 linux命令
不是内部或外部命令 windows10 执行 linux命令 打开 PowerShell 输入linux命令
- Linux命令行执行sqlite3命令创建表格,插入数据,获取数据
Linux命令行执行sqlite3命令创建表格,插入数据,获取数据 文章目录 Linux命令行执行sqlite3命令创建表格,插入数据,获取数据 1-进入sqlite3 2-创建数据库 3-创建表 4 ...
- java调用cd传输_Java调用Linux命令(cd的处理)
一.Java调用Linux系统的命令非常简单 这是一个非常常用的调用方法示例: 1 publicString executeLinuxCmd(String cmd) {2 System.out.pri ...
- java ganymed ssh2_java 远程执行Shell命令-通过ganymed-ssh2连接
一.实现远程执行 此程序的目的是执行远程机器上的Shell脚本. [环境参数] 远程机器IP:192.168.243.21 用户名:user 密码:password 命令:python /data/a ...
- java使用ganymed-ssh2远程执行shell命令
先上依赖 <!-- https://mvnrepository.com/artifact/ch.ethz.ganymed/ganymed-ssh2 --> <dependency&g ...
- java telnet端口_Java 实现 telnet命令 验证主机端口的连通性
Java 实现 telnet命令 验证主机端口的连通性 1.Telnet 命令 Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式.它为用户提供了在本地计 ...
最新文章
- mysql常见面试题(持续更新)
- kali工具中文手册_Kali Linux 2019.4发布了!解决Kali Linux 2019.4中文乱码问题
- https://www.threatminer.org/domain.php?q=blackschickens.xyz ——域名的信誉查询站点 还可以查IP...
- python解析excel公式_[python][openpyxl]读取excel中公式的结果值
- 苹果推出“轻触支付”新方式 目前仅面向美国
- Java中Comparable和Comparator接口的区别
- AKKA 集群中的发布与订阅Distributed Publish Subscribe in Cluster
- beatsx三闪红灯是什么意思_飞机座椅上写的quot;taxiquot; 什么意思?出租车?
- 闲话WPF之十三(WPF中的资源)
- python社区版如何下载库_pycharm社区版在哪里下载
- 计算机中汉字的顺序用什么牌,最常用汉字频率排序
- Deepin 深度操作系统安装教程
- C#操作Memcached缓存
- matlab进行道格拉斯筛选,用MATLAB计算柯布道格拉斯函数,需要计算程序,急!谢谢大神...
- 探探自动右划,自动点击,自动加星
- c++ 数据结构 软件压缩/解压缩软件Szip(Huffman算法及应用)
- OpenWrt 网络设置(六)
- 不破不立 WCA-IeSF全球电竞高峰论坛的五大革新
- 洛谷 题单2分支结构(freshman锻炼牛犇勿喷)
- 傅里叶分析和图像的傅里叶频谱解析