命令执行之RunTime.getRuntime().exec()

2019-05-09  本文已影响0人  TsengYUen

在java中,RunTime.getRuntime().exec()实现了调用服务器命令脚本来执行功能需要。

用法:         

public Process exec(String command)-----在单独的进程中执行指定的字符串命令。

public Process exec(String [] cmdArray)---在单独的进程中执行指定命令和变量

public Process exec(String command, String [] envp)----在指定环境的独立进程中执行指定命令和变量

public Process exec(String [] cmdArray, String [] envp)----在指定环境的独立进程中执行指定的命令和变量

public Process exec(String command,String[] envp,File dir)----在有指定环境和工作目录的独立进程中执行指定的字符串命令

public Process exec(String[] cmdarray,String[] envp,File dir)----在指定环境和工作目录的独立进程中执行指定的命令和变量

举例:

1.  RunTime.getRuntime().exec(String  command);

            在windows下相当于直接调用   /开始/搜索程序和文件  的指令,比如

            Runtime.getRuntime().exec("notepad.exe");  -------打开windows下记事本。

2.  public Process exec(String [] cmdArray);

             Linux下:

             Runtime.getRuntime().exec(new String[]{"/bin/sh","-c", ";

             Windows下:

             Runtime.getRuntime().exec(new String[]{ "cmd", "/c", cmds});

实例:

String command = "find " + source.getRoute() + " -name '" +source.getName();   

Process process = Runtime.getRuntime().exec(new String[] {"/bin/sh","-c",command});

补充:#!/bin/bash和#!/bin/sh的区别

#! 是个指示路径的表示符,/bin/bash和/bin/sh指定了脚本解析器的程序路径

bash是sh的完整版,bash完全兼容sh命令,反之不行

OPTIONS:

     -c string      该选项表明string中包含了一条命令.如 bash -c ls ~

  -i       使Bash以交互式方式运行

  -r       使Bash以受限方式运行

  --login       使Bash以登录Shell方式运行

  --posix      使Bash遵循POSIX标准

  --verbose    使Bash显示所有其读入的输入行

  --help     打印Bash的使用信息

  --version     打印版本信息

上一篇下一篇

猜你喜欢

热点阅读