java - 是否有跨平台命令可以打印一些内容到控制台?

标签 java linux windows unix cross-platform

我正在为一种接受命令、运行它并以字符串形式返回标准输出的方法编写“端到端”测试。它看起来像这样:

public static String runCommand(String ... command) { }

我需要的是一个跨平台命令,它可以向控制台写入一些内容,因为我们混合使用了 windows/linux 机器,而且我需要测试在任何地方运行。我不希望有 if (os == 'windows') 类型的语句。

我不想在这里使用System.out.println(command),我想执行代码并获得输出。

例如,sleep 5 将在 Unix/Linux 和 Windows 上 hibernate 5 秒,但不会输出任何内容。 echo hello 在 Windows 上不起作用,因为 echo 是来自 Unix 终端的命令。

有什么想法吗?

我不是在寻找关于这段代码“可测试性”的评论。

最佳答案

hostname, ping, route, whoami, help, .. . ?

关于java - 是否有跨平台命令可以打印一些内容到控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26997161/

相关文章:

windows - 无法从 Windows 命令提示符运行 curl 命令,但可以从 cygwin 驱动器运行它

windows - Visual Studio 100% 磁盘使用率

java - 使用Java应用程序创建EKS集群

java - 语句中的回文 : Java

linux - 如何在我分发的包中使用 git

linux - 如何在 Linux RHEL 服务器上安装 Vagrant

java - 如何在hibernate中写left join?

java - Android Lollipop 中的服务似乎随机消失,没有错误

php - xgettext 给了我一个简单的行 : 的奇怪输出

linux - 使用 Windows 而不是 Linux 时 UDP 数据包丢失