【发布时间】:2015-10-02 10:57:55
【问题描述】:
我遇到了一个奇怪的问题;每当我在eshell 中运行命令时(无论是简单命令、复杂应用程序还是玩具示例),每个应该指向stderr 的输出都会转到stdout。
这是一个例子:
#include <iostream>
int main()
{
std::cerr << "ERROR\n";
std::cout << "OUTPUT\n";
}
我得到以下信息:
~ $ ./a.out 2> /dev/null
ERROR
OUTPUT
使用shell、term 或外部终端启动相同的命令会按预期工作。即使在eshell 内启动dash、sh 或bash,然后启动程序也可以。
这是eshell 错误吗?会不会是我这边的一些错误配置?
我的emacs版本是GNU Emacs 24.3.1
谢谢你, 尼古拉斯
【问题讨论】:
-
看起来像一个 eshell 错误。 Eshell 的 info 有一个关于重定向的部分,但根本没有提到 stderr。
标签: linux emacs stdout stderr eshell