【发布时间】:2014-09-07 15:55:27
【问题描述】:
我正在尝试编写一个小型 Java 命令行应用程序,它将创建一个新文件,然后使用存储在 $EDITOR 中的系统默认编辑器打开它,然后在编辑器关闭后退出。
到目前为止,没有运气,我尝试了以下方法:
Desktop dt = Desktop.getDesktop();
dt.edit(file);
这种方法产生了一个UnsupportedOperationException,这有点道理,因为我是从终端运行我的程序,而不是从桌面运行 Java 应用程序。
现在,我有这个:
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec(commandString); // "vim newfile"
proc.waitFor();
这个正在工作,但不是我需要的。当我跑步时
ps a | grep vim
我可以看到它确实在后台运行,文件名是我给它的:
1000 pts/1 S+ 0:00 vim 2014-07-16.23-02
关于如何让它在前台运行的任何想法?
【问题讨论】:
标签: java linux command-line-interface