我通过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
答案 0 :(得分:2)
根据expect
手册页,log_user 0
命令可用于禁用日志记录到stdout。这不会更改日志文件的日志记录。同样,log_user 1
可用于重新启用stdout日志记录。
答案 1 :(得分:0)
您可以使用 netcat (nc
)代替 telnet 。 Netcat 没有 telnet 显示的额外输出。