使用socat / netcat管道或发送字符串并暂停

时间:2013-05-22 20:02:18

标签: linux bash shell socat

我将来自ttyUSB0的无缓冲代码捕获为字符串尽管是hexdump&#39>

/usr/bin/stdbuf -o0 /bin/busybox hexdump -v -e '12/1 "%02x" "\n"' /dev/ttyUSB0

示例输出像这样(没有引号):" 20303830303e353a30373220"

现在我很无奈:

我想要一个循环到netcat / socat第一次捕获(可能是读取?)到另一个主机,而不是稍微停顿,例如在下一次捕获发送之前10秒。

我搜索了与socat的优雅路线,但我所有的管道示例都失败了。似乎有些理解子壳过程的问题和缺乏经验。有人提示吗?

1 个答案:

答案 0 :(得分:0)

以下内容适用于我,我的鼠标为输入:

sudo stdbuf -o0 hexdump -v -e '12/1 "%02x" "\n"' /dev/input/by-id/usb-Logitech_USB_Receiver-if02-mouse | (while true; do read buf; echo $buf; sleep 1; done) | nc localhost 8008

我相信可以更好地实现我在while循环中所做的事情......

我可以通过之前启动的鼠标获取鼠标的输入

nc -l localhost 8008