Unix 是否有任何命令行工具来编写tcp套接字脚本
我在构建一个供我私人使用的MPD客户端时遇到了以下问题 我需要(从/bin/sh脚本):Unix 是否有任何命令行工具来编写tcp套接字脚本,unix,tcp,command-line-interface,sh,mpd,Unix,Tcp,Command Line Interface,Sh,Mpd,我在构建一个供我私人使用的MPD客户端时遇到了以下问题 我需要(从/bin/sh脚本): 通过tcp向服务器发送命令 在自己的线路上等待OK 向服务器发送close命令以清除连接 是否有任何命令行工具可以用来实现这一点(我可以用C/Java/Python编写代码,但不希望引入依赖关系) 我尝试过netcat,但无法执行步骤2,这导致我丢失了来自1的部分响应,因为在发送输出之前连接已关闭 我试过但一直不起作用的是 printf 'command_list_ok_begin\nnext\nstatu
printf 'command_list_ok_begin\nnext\nstatus\nplaylistinfo\ncommand_list_end\nclose\n'|nc -w 5 $mpdhost 6600 #
你实际使用的是什么外壳?POSIX shell没有套接字功能,因此您已经对非标准工具(
netcat
)有了外部依赖,因此您最好切换到另一种语言。如果您可以假设一个特定的shell,如bash
或zsh
,那么在shell本身中就有通过TCP进行通信的选项。在不改变环境的情况下,它是dash