我提供一种可行的方法。供你参考。思路是利用操作系统的shell,执行相应的命令。
以下以WINDOW操作系统为例。LINUX的思路相同。1,在E;\下建立如下两个bat文件,内容分别如下:
e:\setip1.bat文件内容:rem 设置IP、子网掩码、默认网关
c:
cd \
netsh exec e:\setip.bat另一个文件e:\setip.bat文件内容:interface
ip
set address "本地连接" static 192.168.1.111 255.255.255.0 192.168.1.1
exit
2,执行脚本命令的JAVA程序就简单了,代码如下:package com.abc;
import java.io.BufferedReader;
import java.io.InputStreamReader;public class RunProcess { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String cmd="cmd.exe /c start e:/setip1.bat ";
Runtime rt = Runtime.getRuntime();//获取运行时对象
try {
Process p = rt.exec(cmd);// 启动另一个进程来执行命令
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String msg;
while ((msg = br.readLine()) != null)
//获得命令执行后在控制台上的输出信息
System.out.println(msg);// 打印输出信息
//检查命令是否执行失败。
if (p.waitFor() != 0) {
if (p.exitValue() == 1)// 0 正常结束,1:非正常结束
System.err.println("命令执行失败!");
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}}
以下以WINDOW操作系统为例。LINUX的思路相同。1,在E;\下建立如下两个bat文件,内容分别如下:
e:\setip1.bat文件内容:rem 设置IP、子网掩码、默认网关
c:
cd \
netsh exec e:\setip.bat另一个文件e:\setip.bat文件内容:interface
ip
set address "本地连接" static 192.168.1.111 255.255.255.0 192.168.1.1
exit
2,执行脚本命令的JAVA程序就简单了,代码如下:package com.abc;
import java.io.BufferedReader;
import java.io.InputStreamReader;public class RunProcess { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String cmd="cmd.exe /c start e:/setip1.bat ";
Runtime rt = Runtime.getRuntime();//获取运行时对象
try {
Process p = rt.exec(cmd);// 启动另一个进程来执行命令
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String msg;
while ((msg = br.readLine()) != null)
//获得命令执行后在控制台上的输出信息
System.out.println(msg);// 打印输出信息
//检查命令是否执行失败。
if (p.waitFor() != 0) {
if (p.exitValue() == 1)// 0 正常结束,1:非正常结束
System.err.println("命令执行失败!");
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}}
以下以WINDOW操作系统为例。LINUX的思路相同。1,在E;\下建立如下两个bat文件,内容分别如下:
e:\setip1.bat文件内容:rem 设置IP、子网掩码、默认网关
c:
cd \
netsh exec e:\setip.bat另一个文件e:\setip.bat文件内容:interface
ip
set address "本地连接" static 192.168.1.111 255.255.255.0 192.168.1.1
exit
2,执行脚本命令的JAVA程序就简单了,代码如下:package com.abc;
import java.io.BufferedReader;
import java.io.InputStreamReader;public class RunProcess { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String cmd="cmd.exe /c start e:/setip1.bat ";
Runtime rt = Runtime.getRuntime();//获取运行时对象
try {
Process p = rt.exec(cmd);// 启动另一个进程来执行命令
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String msg;
while ((msg = br.readLine()) != null)
//获得命令执行后在控制台上的输出信息
System.out.println(msg);// 打印输出信息
//检查命令是否执行失败。
if (p.waitFor() != 0) {
if (p.exitValue() == 1)// 0 正常结束,1:非正常结束
System.err.println("命令执行失败!");
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}} 提示: 需要操作权限,作为管理员运行
以管理员身份运行 这个JAVA程序就可以了。