我正在编写一个独立于平台的Java控制台工具,其中必须在运行时在单独的独立终端中执行一些命令。
然而,我需要知道我应该使用的终端是gnome终端还是xterm。即在该特定系统上可用的系统。因为有许多不同的linux变体可用。我想至少支持最明显的。
通常,在Java中,System.getProperty("os.name")返回Linux,但它不会告诉您它的Ubuntu或任何其他Linux。因此,很难知道在运行时启动哪个终端。无论是gnome终端,还是xterm,或者还有什么我不知道的。
工作装置:
在Windows中:
cmd /c start java -jar jarTool arguments在Ubuntu:
gnome-terminal --execute java -jar jarTool arguments或
xterm -e java -jar jarTool arguments另外,为了获得更多信息,我在运行时使用Runtime.getRuntime().exec(args or commands)从Java程序启动终端。
发布于 2014-07-28 17:28:21
如果您使用/Bin/Bash <terminal command>执行这些命令会更好,这将适用于每个linux发行版。
https://unix.stackexchange.com/questions/147033
复制相似问题