`
ol_beta
  • 浏览: 289345 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

java执行命令(cmd,shell)

阅读更多

一个简单的小工具,用java执行系统命令,并打印输出。

public class OSExecute {
	/**
	 * <b>command。</b>
	 * <p>
	 * <b>详细说明:</b>
	 * </p>
	 * <!-- 在此添加详细说明 --> 无。
	 * 
	 * @param command
	 */
	public static void command(String command) {
		try {
			Process process = new ProcessBuilder(Arrays.asList(command.split(" "))).start();
			// 标准输入流
			BufferedReader result = new BufferedReader(new InputStreamReader(
					process.getInputStream()));
			String s = result.readLine();
			while (s != null) {
				System.out.println(s);
				s = result.readLine();
			}
			// 标准错误输入流
			BufferedReader error = new BufferedReader(new InputStreamReader(
					process.getErrorStream()));
			s = error.readLine();
			while (s != null) {
				System.err.println(s);
				s = error.readLine();
			}
		} catch (Exception e) {
			// 纠正
			if (!command.startsWith("CMD /C")) {
				command("CMD /C " + command);
			} else {
				throw new RuntimeException(e.getMessage());
			}
		}
	}

	public static void main(String[] args) {
		OSExecute.command("dir");
	}
}
 

测试ls(windows下测试),命令的结果:

驱动器 E 中的卷是 Doc
卷的序列号是 B411-2480

E:/workspace/java/ThinkInJava/book 的目录

2010/12/28 20:30 <DIR> .
2010/12/28 20:30 <DIR> ..
2010/12/28 19:31 518 .classpath
2010/08/29 08:59 380 .project
2010/12/28 17:09 <DIR> .settings
2010/12/28 19:57 <DIR> bin
2010/12/28 20:32 100 data.txt
2010/08/29 09:02 <DIR> source
2010/12/28 19:55 <DIR> src
2010/08/29 09:14 <DIR> test
3 个文件 998 字节
7 个目录 13,018,263,552 可用字节

分享到:
评论

相关推荐

    java控制台输入cmd命令, ssh远程linux shell命令, 并打印命令输出到控制台

    以上就是使用Java执行本地CMD命令以及通过SSH连接远程Linux服务器执行shell命令的方法。这两个功能的结合,使开发者能够轻松地在不同的操作系统间进行跨平台的系统操作,极大地提高了开发和运维的效率。

    java执行cmd命令

    import java.io.*; /** * &lt;p&gt;Title: 执行CMD命令 * * &lt;p&gt;Copyright: Copyright (c) 2010 *

    java 执行cmd命令及mongodb脚本

    Java执行CMD命令及MongoDB脚本是开发过程中常见的任务,特别是在集成系统或者自动化运维场景下。下面将详细讲解这两个主题。 一、Java执行CMD命令 在Java中,我们可以使用Runtime类或ProcessBuilder类来执行操作...

    android执行adb shell命令源码

    首先,`adb shell`命令是通过ADB工具在设备的shell环境中执行命令。在Android应用中,我们通常会用到`Runtime`类或者`Process`类来实现这一功能。以下是一个简单的示例,展示如何在Java代码中执行`adb shell`命令: ...

    android通过jni执行shell命令

    JNI在各种场景下都非常有用,比如性能优化、利用系统底层功能或者如本例所示,执行系统级别的操作,例如运行shell命令。本文将深入探讨如何使用JNI在Android中执行shell命令。 首先,理解JNI的工作原理是必要的。...

    Java 调用 Shell 命令

    // 记录执行命令的时间 stringBuffer.append(dateFormat.format(new Date())) .append(" 准备执行 Shell: ").append(shellCommand).append("\r\n"); Process pid = null; String[] cmd = {"/bin/sh", "-c", ...

    java调用shell脚本执行sqlldr与存储过程

    因为我在linux环境下执行shell脚本时sqlldr命令和sqlplus命令是正常执行的,没有任何问题,但是在java代码中调用脚本时却报错,所有排除了其他原因,只可能是环境变量的问题, 于是我把oracle的所有环境变量直接复制...

    andorid使用jni执行shell命令例子

    在Android开发中,有时我们需要执行一些底层操作,例如与硬件交互或者进行系统级别的操作,这时候JNI(Java Native Interface)和shell命令就显得尤为重要。本文将详细介绍如何在Android应用中使用JNI来执行shell...

    java Sokcet远程调用shell

    - 使用Runtime.getRuntime().exec()或ProcessBuilder执行命令,捕获标准输出和错误输出。 - 将输出数据写入Socket的OutputStream,回传给客户端。 2. **客户端**: - 创建Socket实例,连接到服务器的IP地址和...

    java javascript 调用命令行 cmd

    `ProcessBuilder`提供了更灵活的方式来构建和执行命令。你可以创建一个`ProcessBuilder`实例,然后添加命令及其参数。例如: ```java List&lt;String&gt; commands = Arrays.asList("cmd", "/c", "dir"); ...

    Java代码执行shell命令的实现

    "Java代码执行shell命令的实现" Java代码执行shell命令的实现是指在Java程序中调用操作系统的shell命令,实现与操作系统交互的功能。下面将详细介绍Java代码执行shell命令的实现方法。 环境准备 在执行shell命令...

    mysqldump java远程备份mysql数据库 cmd备份

    请确保Java程序有权限执行外部命令,并且mysqldump在Java执行环境的PATH中。 ### 进阶技巧 1. **加密备份**: 可以使用`--password`选项代替 `-p`,避免密码显示在命令行历史记录中。 2. **增量备份**: 虽然...

    右键添加CMD命令

    要实现“CMD Here”,我们需要编辑`HKEY_CLASSES_ROOT\Directory\shell`下的键值,增加一个新的子键,然后设置其显示名称(如“CMD Here”)和执行命令。执行命令通常是`cmd.exe /k cd %1`,这会打开命令提示符并...

    Java私塾:Hive Shell 基本操作——深入浅出学Hive

    - `dfs &lt;dfs command&gt;`: 在 HDFS 上执行命令。 - `&lt;query string&gt;`: 执行查询并显示结果。 ### 日志 Hive 使用 Log4J 处理日志。通过调整 `hive.root.logger` 的级别(如 `INFO`, `DEBUG`),你可以控制 Hive 的...

    java在win下启动bat和在linux下启动shell脚本

    为了保证脚本执行的可靠性,Java代码可能还会包含异常处理机制,比如捕获`IOException`来处理执行命令时可能出现的任何问题。此外,可能还会有一个关闭进程的逻辑,以确保即使在程序异常终止时,也能正确关闭执行的...

    java调用DOS命令

    ProcessBuilder类提供更灵活的方式来执行命令,它可以处理更复杂的命令行参数,包括环境变量和工作目录的设置。下面的例子展示了如何使用ProcessBuilder: ```java ProcessBuilder pb = new ProcessBuilder("cmd...

    android系统中调用shell脚本

    4. **使用`dalvikvm-heap`权限**:在AndroidManifest.xml中添加`&lt;uses-permission android:name="android.permission.DUMP" /&gt;`,这允许应用获取设备状态信息,可能有助于执行更复杂的shell命令。 5. **使用AIDL...

    ganymed-ssh2-linux,java-impala驱动,java-hana驱动

    java操作Linux-shell命令的jar文件,java语言执行 Linux-cmd命令 java操作Linux-shell命令的jar文件,java语言执行 Linux-cmd命令 java操作Linux-shell命令的jar文件,java语言执行 Linux-cmd命令 java操作Linux-shell...

    java执行Linux命令的方法

    另外,虽然可以直接使用`Runtime.exec()`执行单条命令,但更推荐的方法是编写一个bat(Windows)或shell(Linux)脚本,将一系列命令封装在一起,然后通过Java执行这个脚本。这样可以更好地组织和管理复杂的命令序列...

    java调用shell

    `execCmd`方法接受一个Shell命令作为字符串参数,通过`Runtime.getRuntime().exec(cmd)`执行该命令。`LineNumberReader`用于读取Shell脚本执行的输出,将其逐行存储到字符串变量`ret`中。值得注意的是,`2&gt;&1`表示...

Global site tag (gtag.js) - Google Analytics