- 浏览: 959294 次
- 性别:
- 来自: 江西上饶
文章分类
- 全部博客 (460)
- p.spring (56)
- p.maven (20)
- p.ant (17)
- p.jee (18)
- p.jse (33)
- p.ofbiz (31)
- p.软件工程 (8)
- p.struts2 (5)
- p.hibernate (5)
- linux (25)
- 设计模式 (2)
- p.javascript (11)
- 硬件 (1)
- p.jsp (2)
- p.windows批处理 (1)
- 操作系统问题 (5)
- 算法 (1)
- p.mysql (7)
- p.sql (5)
- p.c (1)
- google产品 (0)
- 内存 (1)
- p.struts (1)
- p.freemarker (7)
- p.css (4)
- p.log4j (10)
- p.html (3)
- 淘宝产品 (0)
- 其他 (3)
- 编译器 (0)
- svn (4)
- p.spring.security (11)
- 图形 (0)
- p.xml (1)
- p.ssh (0)
- p.jquery (4)
- p.jdbc (3)
- p.flex (0)
- p.c++ (0)
- p.c#Net (0)
- p.assembly (0)
- p.sqlserver (0)
- p.其他 (3)
- p.webwork (21)
- p.wap (12)
- p.cglib (1)
- p.jee服务器 (11)
- windows (2)
- p.iphone (1)
- p.java.分布式与集群 (2)
- p.ibatis (16)
- p.eclipse (5)
- 架构 (2)
- http协议 (5)
- 我的个人标准 (2)
- 多线程 (1)
- 奇怪问题 (5)
- p.jira (13)
- p.httpclient (1)
- 服务器.apache (11)
- 安全防范 (1)
- p.PODAM (1)
- p.junit (16)
- fop (2)
- 硬盘安装 (1)
- powerdesigner (0)
- 单元测试 (1)
- apache commons (4)
- tomcat+apache集群 (10)
- 各类诡辩 (1)
- 安卓 (8)
- qvod (1)
- java编程基础知识考试考点及答案 (0)
- 工作总结 (4)
- oracle (0)
- spring的util工具 (3)
- json (2)
- maven (3)
- jms (19)
- p.bat (3)
- hadoop (2)
- git (3)
- nginx (1)
- p.移动开发 (1)
- shiro (3)
- 游戏破解 (1)
- react-native (7)
- ios开发 (1)
- webmagic (6)
- socks5 (1)
最新评论
-
weituotian:
说的不好,没人看的
公司系统中的菜单功能和权限功能 -
石不易:
非常详细的注解~
绑定端口和IP,Listen 与VirtualHost指令 -
spring_springmvc:
spring mvc demo教程源代码下载,地址:http: ...
spring mvc -
liyixing1:
PandaDONG 写道谢谢你啊,我已经下下来了,只是还有很多 ...
jira war安装 -
liyixing1:
PandaDONG 写道谢谢你啊,我已经下下来了,只是还有很多 ...
jira war安装
1.关于CMD(为了让exec更正常的运行,往往会通过cmd来启动命令)
cmd /c dir 是执行完dir命令后关闭命令窗口。
cmd /k dir 是执行完dir命令后不关闭命令窗口。
cmd /c start dir 会打开一个新窗口后执行dir指令,原窗口会关闭。
cmd /k start dir 会打开一个新窗口后执行dir指令,原窗口不会关闭。
其中/C会阻塞java的线程,因为java需要等待进程结束
/k的话它怎么都获取不到输出的信息,无论是输入流还是错误输入流都不行!
/k还没测试是不是会阻塞。
2.调用多个命令,这个学一下bat脚本,就知道了,bat脚本(exec 其实也算是bat的一个环境,),在bat中可以通过&&把多个命令拼接一起运行,bat的环境其实是通过cmd.exe命令获取到的。所以前面必须通过cmd
exec("cmd /c set CLASSPATH=D:\\java\\test && javac D:\\java\\java.java && java D:\\java\\ com.a.A")
3.参数化
第一个参数cmdarray——包含所调用命令极其参数的数组。
例如:shutdown -s -t 3600——在一小时后自动关机命令
我们可以构建这样的一个数组:String arr[] = {"shutdown","-s","-t","3600"};
数组第一个元素“shutdown”是命令,其后的三个-s、-t、3600都是参数,然后直接将这个数组注入exec方法即可。
需要注意的是,在调用这个方法时我们不能将命令和参数放在一起——String arr[] = {"shutdown -s -t 3600"};
然后是第二个参数:envp——字符串数组,其中每个元素的环境变量的设置格式为 name=value,如果子进程应该继承当前进程的环境,或该参数为null。
String envp[] = {"CLASSPATH=D://"}
第三个参数,运行环境目录,对应的就是java的System.getProperty("user.dir")
Process process = Runtime.getRuntime().exec(new String[]{"shutdown","-s","-t","3600"}, null, new File("D:/TEST"));
发表评论
-
java实现socks5
2019-07-16 23:05 1718socks5的基础知识 关于socks5的定义]https: ... -
Spring 定时任务,cron表达式,@Scheduled cron表达式
2016-04-25 15:48 5296一个cron表达式有至少6 ... -
xulrunner
2016-01-13 13:07 666http://ftp.mozilla.org/pub/xulr ... -
谈一谈自己对依赖、关联、聚合和组合之间区别的理解
2015-11-17 16:05 777在学习面向对象设计对象关系时,依赖、关联、聚合和组合这四种关系 ... -
java apache common unicode处理
2015-09-19 15:17 1563if (UnicodeConvertType.中文转unico ... -
jdbc ssh通道
2015-09-17 14:40 1861java通过ssh链接数据库,需要用到 JSCH是一个纯粹的用 ... -
swt 窗口 最大化最小化按钮设置等
2015-09-14 17:53 4315窗体顶部菜可以在实例化的时候设置,也可以单独设置:Shell ... -
java.lang.Process调用程序阻塞问题解决
2015-08-14 10:56 4256这两天一直在处理flv视频环境的搭建工作,包括服务器的安 ... -
java html解析
2015-07-31 17:31 1206dom解析是常用dom4j。 android中我们常用的是sa ... -
slf4j门面模式实现原理
2015-07-16 10:08 2981在使用slf4j的时候,只 ... -
java - 比较时间-相差月数
2015-06-15 09:57 1463Date经常会出现比较两个Date相差的月数,实际上可以做一个 ... -
log4jdbc
2014-12-25 13:55 3046该框架目前支持到jdbc3.和jdbc4的版本。 提供了多种 ... -
jdbc规范 jdbc1 jdbc2 jdbc3 jdbc4
2014-12-25 13:49 5060目前jdbc规范已经升级到 ... -
反射,代理,动态java原理
2014-12-22 16:44 1116需要两个类,用于下面的测试 package test; ... -
Bean Validation 1.0(JSR-303)
2014-11-18 16:15 1092http://jinnianshilongnian.iteye ... -
JRE最小化原理
2014-10-15 20:19 1305比如我们一个程序只用到了很少的类,像String,Intege ... -
时间重叠的判断
2014-02-14 11:16 1648如上图,粗线是时间1 细线是时间2 时间重叠,只可能是以上四 ... -
java获取当前类的绝对路径
2013-12-14 00:37 8961.如何获得当前文件路径 常用: (1).Test.class ... -
枚举 enum
2013-12-13 16:52 5229java的enum其实是一个类。编译器根据你enum的定义会为 ... -
EL表达式,ognl表达式对集合过滤和投影
2013-11-23 11:48 1205GONL<s:property value=" ...
相关推荐
### Java执行可执行文件的方法详解 在Java编程中,经常需要执行一些外部的可执行文件或者脚本(如bat或shell脚本)。本文将详细介绍三种常用的方法:`Runtime.exec()`、`ProcessBuilder`以及`commons-exec`库。 ##...
java.lang.Runtime.exec() Payload知识点详解 Java.lang.Runtime.exec() 方法是 Java 语言中用于执行操作系统命令的方法,它可以将参数传递给命令,并执行命令以获取结果。但是,在使用该方法时,需要注意一些重要...
#### 二、Runtime类的exec()方法详解 `Runtime.exec()`是Java中用来执行外部命令的重要方法之一,它有多种重载形式,其中最常见的两种形式如下: 1. **基本形式**:`Process p = Runtime.getRuntime().exec...
这种操作可以通过Java的`Runtime`类实现,具体来说是通过`Runtime.exec()`方法来执行外部命令。这种方式特别适用于需要在应用程序中集成多媒体功能但又不想引入复杂的多媒体处理库的情况。 #### 二、知识点详解 ##...
这通常是通过`java.lang.Runtime`类的`exec()`方法执行外部命令来实现的。 1. **设置文件为只读**:使用`File.setReadOnly()`。 ```java File file = new File("path/to/your/file"); boolean success = file....
### Java使用DOS命令详解 在Java开发过程中,有时候我们需要执行一些特定的操作系统命令来完成特定的任务,尤其是在Windows平台上。本文将详细介绍如何在Java中调用DOS命令,并通过具体的示例来阐述这一过程。 ###...
Java程序不能直接创建`Runtime`类的实例,而必须通过`Runtime.getRuntime()`静态方法获取当前运行时环境的`Runtime`对象。这是由于`Runtime`类的构造方法是私有的,不允许外部直接实例化。 #### Runtime类的主要...
`Runtime.getRuntime()`方法用于获取当前Java应用程序的运行时对象,通过这个对象可以调用`exec()`方法来启动一个新的进程。 #### exec()方法详解 `exec()`方法是`Runtime`类中的一个重要成员,它用于启动一个新...
Java的Runtime类是Java语言与运行环境之间的一个接口,它提供了很多方法来管理Java应用程序的运行环境,包括内存管理和执行外部程序等。Runtime类的实例是全局的,每个Java应用程序都只有一个Runtime实例,通过`...
Java可以通过`Runtime.getRuntime().exec()`方法来执行外部程序或命令。例如: ```java Runtime cmd = Runtime.getRuntime(); Process p = cmd.exec("mysqldump --opt – hlocalhost --user=root --password=admin ...
直接执行命令是通过Runtime.exec()方法或ProcessBuilder类来调用FFmpeg的命令行工具,例如: ```java String command = "ffmpeg -i input.mp4 output.mp4"; Process process = Runtime.getRuntime().exec(command);...
Java提供了多种方法来调用外部命令,其中一种常用的方式就是通过`Runtime.getRuntime().exec()`方法来执行批处理文件。 #### 二、Java调用批处理的基本语法 Java中调用批处理的基本语法如下: ```java Process ...
Java中可以通过`java.lang.Runtime`类中的`exec()`方法来执行外部命令,进而调用Shell脚本或Python脚本。以下是一个基本的例子: ```java public String python(String pythonPath, String[] params) { File file ...
#### 2.1 `Runtime.getRuntime().exec(String command)`方法 该方法用于启动一个新的进程并执行指定的命令。在这个例子中,我们传递了"notepad"作为参数,表示打开记事本程序。 #### 2.2 `p.waitFor()`方法 这个...
Android中实现ping功能的多种方法详解 Android系统中实现ping功能是 Android开发中的一项重要任务,本文将详细介绍 Android中实现ping功能的多种方法。 方法一:使用InetAddresss方式 从Java 1.5开始,java.net...
这通常涉及使用Java的`Runtime.getRuntime().exec()`方法来执行系统命令。以下是一个简单的Java示例,展示了如何调用`mysqldump`命令来导出数据: ```java package com; import java.io.*; public class Test { ...
这个方法实现了数据库备份的功能,其中 `Put()` 方法使用 `Runtime.getRuntime().exec()` 方法执行备份命令,并在备份完成后输出“备份成功”的提示信息。 ##### 4. 数据库还原实现 ```java public void In() ...
它利用了Java的`Runtime`类提供的方法`exec`来执行操作系统命令。需要注意的是,这种方法具有一定的平台依赖性,因此在不同操作系统上运行时可能需要调整命令。此外,对于异常处理部分,建议进行改进以提高程序的...
#### 1.2 exec() 方法详解 `exec(String command)`方法接受一个字符串参数作为命令行指令,并返回一个`Process`对象,该对象代表了由指定命令创建的新进程中所执行的程序。此方法能够执行任何可以通过命令行输入的...