Tubo bidirecional Unix na linha de comando

Tubo bidirecional Unix na linha de comando

Consegui usar este comando do Linux para conectar o Netcat a uma porta serial:

nc -l 80 <> /dev/ttyS0

Eu gostaria de poder registrar esta transação. Meu plano de backup é usar o Wireshark para monitorar o fluxo do netcat, mas o ideal seria fazer algo assim:

cat /dev/ttyS0 | tee upstream.bin | nc -l 80| tee downstream.bin | /dev/ttyS0

Isso tenta abrir o ttyS0 duas vezes e, portanto, gera um erro de permissão. Alguém conhece uma maneira mais inteligente de fazer isso?

Responder1

A documentação do Netcat diz

Para obter um arquivo hexadecimal dos dados enviados de qualquer maneira, use "-o logfile". As linhas de dump começam com "<" ou ">" para indicar respectivamente "da rede" ou "para a rede" e contêm a contagem total por direção e representações hexadecimais e ascii do tráfego. Capturar um dump hexadecimal naturalmente retarda um pouco o netcat, então não o use onde a velocidade é crítica.

informação relacionada