2017-09-26 144 views
-1

在Java中使用通常的Runtime.getRuntime().exec("clear")时,没有任何反应。但是,如果使用touch test.txt,则确实会创建文本文件。有没有这个原因,如果是这样,有没有其他的选择?清除Kotlin中的控制台

两者都在相同环境下的Java中工作。

编辑:错过括号

+0

您是否检查过是否引发异常?尝试/捕捉'exec' – Les

+0

刚刚尝试过,没有被抛出 –

+0

在大多数环境中,'clear'是'echo 的shell宏或别名,它可以*不*通过'Runtime.getRuntime ).exec(...)'作为'exec'只适用于路径上真正的可执行二进制文件。但是,如前所述,这是依赖于系统的。但是,在所有系统上,'Runtime.getRuntime()。exec(...)'将输出重定向到管道,因此通过将控制字符发送到标准输出来工作的命令对实际控制台没有影响。换句话说,'Runtime.getRuntime()。exec(“clear”)'是不太可能的。 – Holger

回答

0

你需要调用print("\u001b[H\u001b[2J"),使用转义序列,至少在Linux上。