如何将linux终端输出重定向到Eclipse控制台?

如何将linux终端输出重定向到Eclipse控制台?,eclipse,ubuntu,terminal,console,Eclipse,Ubuntu,Terminal,Console,我正在尝试使用指定终端路径的外部工具(例如/usr/bin/xterm)将终端输出重定向到Eclipse控制台。当我运行这个工具时,它会在eclipse外部打开终端。当我在Windows7中做同样的事情时,将外部工具位置设置为Windows\System32\cmd.exe它在Eclipse控制台中运行。我想知道如何使终端(在Ubuntu 14.04中)以同样的方式工作。您应该使用/bin/sh作为命令解释器 在Windows中,cmd.exe将解释命令和显示终端窗口两个功能组合在一起。在Uni

我正在尝试使用指定终端路径的外部工具(例如
/usr/bin/xterm
)将终端输出重定向到Eclipse控制台。当我运行这个工具时,它会在eclipse外部打开终端。当我在Windows7中做同样的事情时,将外部工具位置设置为
Windows\System32\cmd.exe
它在Eclipse控制台中运行。我想知道如何使终端(在Ubuntu 14.04中)以同样的方式工作。

您应该使用
/bin/sh
作为命令解释器

在Windows中,
cmd.exe
将解释命令和显示终端窗口两个功能组合在一起。在Unix中,这些函数是严格分开的
/bin/sh
解释命令,并
/usr/bin/xterm
(或
/usr/bin/x-terminal-emulator
)显示终端窗口,在该窗口中运行
/bin/sh
(或其他类似于
/bin/bash
/bin/zsh
的shell)来解释命令


因此,如果您要求Eclipse通过
/usr/bin/xterm
运行某些东西,它将出现在一个新窗口中,因为xterm就是这样做的。如果您只想让Eclipse捕获输出,请让它通过
/bin/sh

/usr/bin/xterm
直接运行它,这是对外部窗口的明确请求。请尝试运行程序,但不要在
/usr/bin/xterm
前加前缀,或尝试使用
/bin/sh
。请注意,
xterm
并不等同于windows
cmd.exe
cmd.exe
混合了两种功能:解释命令,在Unix中是
/bin/sh
的工作;打开终端窗口,在X-Windows中是
/usr/bin/xterm
/usr/bin/X-terminal-emulator
的工作。非常感谢。看起来/bin/sh是我所需要的。如果它有效,我会给出正确的答案,这样您就可以将其标记为已接受。