打开 terminal/prompt 并传递命令 (ping)

Open terminal/prompt and pass a comand (ping)

我的 Java 桌面应用程序需要一些帮助。

我有一个按钮可以调用(这是我的意图)终端 (Linux) 或 prompt/cmd (Windows) 并传递一些命令(我正在尝试使用ping 命令)。

我只知道怎么打开终端,但是我不会传递命令。我该怎么做?

谢谢。

已编辑:

我此时的代码:

       Runtime rt = Runtime.getRuntime();
       String sistemaOperacional = System.getProperty("os.name").toLowerCase();
            String ip = "192.168.7.1";
            String comando  = "ping -c 100 "+ip;

            if (sistemaOperacional.contains("linux")){
                try {
                    rt.exec("gnome-terminal ");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            else if (sistemaOperacional.contains("win")){

                try {
                    rt.exec("cmd.exe /c start command");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

            }
            else{
                JOptionPane.showMessageDialog(null, "Não foi possível identificar o sistema operacional!");
            }

您应该在终端文档中搜索用于设置终端启动时 运行 的命令的选项。例如,对于 xterm,它是 -e,因此对于 运行 来自 xterm 中 Java 代码的命令,您可以执行,例如:

Runtime.getRuntime().exec("xterm -e ls;read"); // read is here just for the terminal not to close right away

要弹出终端,运行 ls 并等待用户按回车键,直到终端关闭。

但是既然你不应该依赖你的用户有一个特定的默认终端,你最好使用系统默认,-e是许多终端的标准参数(gnome-terminal也使用它,例如):

Runtime.getRuntime().exec("x-terminal-emulator -e ls;read");