用bash压缩telnet的输出

我通过bash脚本telnet到一台机器。 一切正常,除了telnet会话的输出显示在屏幕上。 我想知道如何抑制这一点。 我似乎无法find放置/dev/null的正确位置。

我不想运行script.sh > /dev/null因为我需要看到它的其他输出。

 expect <<EOF set timeout 20 spawn telnet 0.0.0.0 match_max 100000 expect -exact "Trying 0.0.0.0...\r Connected to 0.0.0.0.\r Escape character is '^\]'.\r \r User name: " send -- "user\r" expect -exact "user\r \r Password: " send -- "pass\r" expect -exact "pass\r send -- "commands" send -- "exit\r" EOF 

根据expect手册页,可以使用log_user 0命令禁用日志记录到stdout。 这不会将日志记录更改为日志文件。 同样,可以使用log_user 1重新启用stdout日志记录。

您可以使用netcatnc )而不是telnetNetcat没有telnet显示的额外输出。