openlang

在 Windows 下把 stderr 转到 stdout

你好。

我想让 Arg.usage 的输出写入 stdout 而不是 stderr,又不想把整个旧程序重写一遍。我是这样试的。

Unix.dup2 Unix.stdout Unix.stderr; (* send output to stdout. *)
Arg.usage (Arg.align (hiddenhelp @ options)) “”

(程序随后就退出了,所以我想应该不需要恢复什么……)。

在 Unix 上这样能用,但在 Windows 上,stdout 和 stderr 都没有输出。Unix 文档中 dup2 的条目没有提到 Windows。

有什么建议吗?

从英语翻译查看原文

后续讨论 3

顺着彼此的依据读下去

同一个问题的其他角度

  1. 通过 Google Colab 使用 MATLAB

    能在 Google Colab (云端的 Jupyter) 中使用 MATLAB 命令吗? 例如,我想在 Google Colab 中调用 Risk Management Toolbox 的函数,比如 bin(vbt, Name, Value)、tb…

    回复 2最近活动 matlab
  2. gdb 能否按地址在汇编指令处设置断点?

    我的尝试如下。 不过,看起来并不存在这条命令。 gdb 能实现这样的功能吗?

    回复 2最近活动 assembly
  3. Playwright 断言能否允许两个文本值中的任意一个?

    我想验证文本中包含 one 或 two。 在 Playwright 中能这样实现吗? 同样的写法也能用在句子内部吗,比如下面这样

    回复 2最近活动 typescript