Estoy usando una frambuesa y necesito 2 transmisiones locales. Esto es lo que he probado:
Intentar
raspivid <some options> -o - | tee nc localhost 5100 | nc localhost 5000
Pregunta
Puedo recibir el resultado 5000
pero no 5100
, ¿qué me falta?
raspivid -o -
escupe la corriente a la salida estándar.
Respuesta1
Bueno, 'tee' no acepta nombres de comando, sino que requierearchivonombres. Estás escribiendo copias del resultado en archivos llamados nc
, localhost
y 5100
en el directorio actual.
Si desea ejecutar dos comandos, verifique si su shell permite la "sustitución de procesos" usando >( ... )
, pasando automáticamente una tubería como nombre de archivo:
raspivid <etc> | tee >(nc localhost 5100) | nc localhost 5000
Alternativamente, instalepee
desdemásutils:
raspivid <etc> | pee "nc localhost 5100" | nc localhost 5000
Si ninguna de esas opciones está disponible, utilicemkfifo
para crear unallamadopipe para una de las instancias 'nc', luego ejecute la salida y la entrada por separado:
mkfifo /tmp/ncpipe
nc localhost 5100 < /tmp/ncpipe &
raspivid <etc> | tee /tmp/ncpipe | nc localhost 5000