如何在tcl中的“ exec”命令中将换行符添加到错误消息中

时间:2019-04-08 10:56:26

标签: linux tcl

我试图通过TCL“ exec”命令执行二进制文件(由C代码生成)。执行一些代码并输出一些输出后,此二进制文件将引发异常。我想查看那些由二进制打印的错误消息,但是在删除换行符后,所有错误消息都变成一行。

我已经在exec命令中尝试过-keepnewline和-ignorestderr开关,但无济于事。

这就是我执行二进制文件的方式     执行abc.out 我试过了     exec -keepnewline -ignorestderr abc.out

C文件(从中生成二进制文件)包含大约100个printf语句,每个语句后跟换行符。但是exec会删除所有换行符,并且所有100行都排成一行。我猜所有消息都将变为标准错误,同时删除换行符,但不确定。有没有一种方法可以让我在不同的行中显示所有消息。

1 个答案:

答案 0 :(得分:0)

您可能希望将子进程的stdoutstderr重定向到父(Tcl)进程:

exec >@ stdout 2>@ stderr abc.out