在bash中抑制telnet的输出

时间:2013-01-23 16:37:16

标签: linux bash telnet expect

我通过bash脚本远程登录到计算机。一切正常,除了telnet会话的输出显示在屏幕上。我想知道如何压制这个。我似乎无法找到放置/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

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:0)

您可以使用 netcat nc)代替 telnet Netcat 没有 telnet 显示的额外输出。