问题标签 [stdout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
7205 浏览

c# - 如何保存控制台应用程序的输出

我需要有关如何让我的 C# 控制台应用程序通过标准输出向用户显示文本同时仍然能够在以后访问它的建议。我想实现的实际功能是在程序执行结束时将整个输出缓冲区转储到文本文件中。

当我没有找到更简洁的方法时,我使用的解决方法是子类化TextWriter重写写入方法,这样它们既可以写入文件,又可以调用原始的标准输出编写器。像这样的东西:

看到它一直在写入和刷新文件。我只想在执行结束时这样做,但我找不到任何访问输出缓冲区的方法。

另外,请原谅上述代码的不准确之处(必须临时编写,抱歉;)。

0 投票
6 回答
17800 浏览

python - 如何最好地在控制台中绘制?

我正在尝试用python编写一个控制台(如终端,而不是游戏控制台)乒乓球游戏,但我无法确定如何最好地(重新)绘制游戏。

我正在考虑将二维数组作为一种位图,编辑数组以反映球/桨的新位置,然后将每一行转换为字符串并打印。然而,这意味着旧的“框架”将保留,如果游戏的尺寸小于控制台窗口,旧的框架仍然可见。

有没有办法从控制台中删除字符?'\b' 我听说是不可靠的。

或者是否有更简单的替代方法可以将此类应用程序输出到控制台?

0 投票
16 回答
332994 浏览

python - 禁用输出缓冲

Python 的解释器中是否默认启用输出缓冲sys.stdout

如果答案是肯定的,那么禁用它的所有方法是什么?

到目前为止的建议:

  1. 使用-u命令行开关
  2. 包裹sys.stdout在每次写入后刷新的对象中
  3. 设置PYTHONUNBUFFERED环境变量
  4. sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)

有没有其他方法可以在执行期间以编程方式在sys/中设置一些全局标志sys.stdout

0 投票
6 回答
52311 浏览

perl - 如何在 Perl 中同时捕获标准错误、标准输出和退出代码?

是否可以从 Perl 运行外部进程,捕获其标准错误、标准输出和进程退出代码?

我似乎能够将这些组合起来,例如使用反引号来获取标准输出,使用 IPC::Open3 来捕获输出,以及使用 system() 来获取退出代码。

如何一次捕获标准错误、标准输出和退出代码?

0 投票
10 回答
84047 浏览

c++ - 以最佳方式从 system() 命令捕获标准输出

system()我正在尝试通过- 例如,启动外部应用程序system("ls")。我想在它发生时捕获它的输出,以便我可以将它发送到另一个函数进行进一步处理。在 C/C++ 中做到这一点的最佳方法是什么?

0 投票
4 回答
5967 浏览

command-line - Adobe AIR 应用程序可以通过命令行输出运行到控制台吗?

我有一个 AIR 应用程序,它通过 onInvoke 获取命令行参数。一切都很好,但我不知道如何将一些状态消息打印回用户(可以说是标准输出/控制台)。可能吗?

即使是跟踪的默认日志文件也可以,但我在任何地方都找不到有关它的任何信息。我需要创建自己的日志文件吗?现在那太傻了。

0 投票
1 回答
9689 浏览

shell - 将标准输入和标准输出重定向到文件

我目前是 C类入门的助教。这门课是使用 Visual Studio 教授的,但是在评分时,我只使用一个简单的 Windows 批处理脚本来处理所有提交的作业、编译它们、在测试文件上运行它们,并将输出重定向到我可以打印的一系列文本文件出来,做标记,然后交还给学生。整个过程运行得很好,除了当我重定向标准输入时,它不会像直接在控制台中输入相同的标准输入时那样出现在重定向的标准输出中。因此,为控制台格式化的代码输出不会在重定向输出中正确显示。以下文件片段显示了此问题。有谁知道一个简单的解决方案?

文件:example.c

文件:输入.txt

输出(控制台)

输出(重定向)

0 投票
2 回答
2052 浏览

c# - RedirectStandardOutput 是缓冲行而不是瞬时的?

好的,我正在尝试使用 Tail 来监视日志文件,但是我无法以编程方式获得与使用相同参数通过 cmd 提示符手动运行它时相同的行为。

通过 cmd 提示符运行时,它会立即显示新行。不过,以编程方式,在“缓冲区”释放所有行之前,我必须等待日志文件中大约75 多个新行。

这是我现在拥有的代码。

我之前使用过 OutputDataReceived 事件,但从未遇到过这些缓冲/垃圾邮件问题。

我现在很困惑。

*编辑*

在 CodeProject 上找到了这个 wintail 项目,并且将切换到该项目,因为缓冲区使这个解决方案太慢了。

感谢您的回答。

0 投票
3 回答
7651 浏览

unix - 从标准输入中删除第一行并重定向到标准输出

我需要将除第一行之外的程序的所有标准输出重定向到文件中。

是否有一个通用的 unix 程序可以从标准输入中删除行并将其余的输出到标准输出?

0 投票
8 回答
40418 浏览

linux - 一个进程如何拦截Linux上另一个进程的stdout和stderr?

我有一些脚本应该停止运行,但会永远挂着。有什么方法可以让我以一种可读的方式弄清楚他们写给 STDOUT 和 STDERR 的内容吗?

例如,我尝试这样做:

但这并没有真正起作用。无论如何,这是一个很长的镜头。

还有其他想法吗?

strace就其本身而言,看到这一点非常冗长且难以理解。

注意:我对他们的输出感兴趣,对其他任何东西都不感兴趣。我有能力自己弄清楚其他事情;这个问题只专注于在启动它后访问正在运行的进程的 stdout 和 stderr 。