当前位置:   article > 正文

linux telnet的返回值,bash shell的telnet返回值_bash_开发99编程知识库

echo quit | timeout --signal=9 2 telnet $line

$? shell 变量存储返回值,但是对于 Linux telnet 客户端, 这可能没有你想象的那么有用 。 如果远程主机关闭连接( 或者发生任何远程或网络错误) 和 0,客户端将返回 1 如果本地客户端端成功关闭连接,则返回。 问题在于编写了许多服务,以便它们发送数据然后自己关闭TCP连接, 而无需等待客户端:$ telnet time-b.timefreq.bldrdoc.gov 13

Trying 132.163.96.2...

Connected to time-b-b.nist.gov.

Escape character is '^]'.

58600 19-04-27 13:56:16 50 0 0 736.0 UTC(NIST) *

Connection closed by foreign host.

$ echo $?

1

即使客户端向服务器发送命令以便退出TCP流,这仍然会导致远程端关闭连接,结果相同,$ telnet mail.tardis.ed.ac.uk 25

Trying 193.62.81.50...

Connected to isolus.tardis.ed.ac.uk.

Escape character is '^]'.

220 isolus.tardis.ed.ac.uk ESMTP Postfix (Debian/GNU)

QUIT

221 2.0.0 Bye

Connection closed by foreign host.

$ echo $?

1

所以无论你怎么做,你都会得到一个 1 。 如果想要远程脚本的返回值,那么使用 ssh 就更容易了:$ ssh ssh.tardis.ed.ac.uk"exit 5"

THE TARDIS PROJECT | pubpubpubpubpubpubpubpubpub | Authorised access only

$ echo $?

5

据我所知,telnet唯一会返回零(即 success)如果你按escape退出客户端, 就像这样:$ telnet www.google.com 80

Trying 216.58.210.36...

Connected to www.google.com.

Escape character is '^]'.

^]

telnet> quit

Connection closed.

$ echo $?

0

希望这有帮助

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/187403
推荐阅读
相关标签
  

闽ICP备14008679号