Linux shell:为什么是;开放式;此telnet命令中需要
我试图在bash中处理telnet输出,我偶然发现了将telnet命令发送到服务器的这种语法Linux shell:为什么是;开放式;此telnet命令中需要,linux,bash,telnet,Linux,Bash,Telnet,我试图在bash中处理telnet输出,我偶然发现了将telnet命令发送到服务器的这种语法 ( echo open $host $port sleep 1 echo $cmd1 sleep 1 ) | telnet 我想知道的是为什么需要“open”命令,为什么 ( echo $host $port ... ) | telnet 导致“无效命令”错误。…因为主机名不是有效的命令名?两者之间有很大的区别 $ telnet host port 及 后者是echo命令有效执行的功能 one l
( echo open $host $port
sleep 1
echo $cmd1
sleep 1
) | telnet
我想知道的是为什么需要“open”命令,为什么
( echo $host $port
...
) | telnet
导致“无效命令”错误。…因为主机名不是有效的命令名?两者之间有很大的区别
$ telnet host port
及
后者是echo
命令有效执行的功能
one liner会自动运行一个open
命令,因此它基本上相当于:
$ telnet
telnet> open host port
但我完全不知道为什么不首先运行
telnet主机端口
。。基本上,您可以使用主机和端口参数调用telnet
,或者,如果您在没有参数的情况下调用它,则必须在telnet>
提示符下使用open
命令连接到主机。哦,根据您的解释,现在我可以理解了。我一定是把Linuxshell的“open”命令和telnet的命令弄混了。多谢各位@sanch3z,如果马克·里德给了你答案,你应该这样做。
$ telnet
telnet> open host port