Runtime.exec 调用OS命令特例

1. 运行带有重定向的命令。

String[] shellCommand = {"/bin/ksh", "-c", "/usr/lib/sendmail -t < mail.html"};

Process process = Runtime.getRuntime().exec(shellCommand);

int ret = process.waitFor();

这里必须使用数组,否则会造成程序阻塞在exec方法上。

 

2. Unix下运行清屏命令

由于Runtime.exec 在调用命令时新建了一个进程,所以使用clear的话,对当前屏幕输出没有影响。

可以使用如下语句。

private final static String ESC = "/033[";

System.out.print(ESC + "2J");

System.out.flush();

 

 

你可能感兴趣的:(String,unix,OS)