2

我正在通过 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
4

2 回答 2

2

根据expect手册页,该log_user 0命令可用于禁用记录到标准输出。这不会将日志记录更改为日志文件。同样,log_user 1可用于重新启用标准输出日志记录。

于 2013-01-23T16:49:35.150 回答
0

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

于 2013-01-23T16:43:36.747 回答