将预期输出从 DOS 实时转换为 UNIX 风格

Convert expect output from DOS to UNIX style in realtime

我通过串行连接到远程主机来编写一些 expect 脚本。

我的问题是生成的进程(使用 log_user 1 启用)的输出包含 DOS 风格的结尾(在 VIM 中读取日志时每行以 ^M 结尾) .

我通常 运行 dos2unix 在期望会话结束时对所有日志进行处理,以摆脱它们。可以实时转换吗?

原来问题很简单

我对我的脚本所做的是像下面这样调用它们:

expect script.exp > mylog

如说明中所述,mylog 在 Vim 中打开或使用 cat -v mylog.

时包含 ^M 行结尾

要实时摆脱它们,我现在就调用:

expect script.exp | tr -d '\r' > mylog