Quiero redirigir la salida de un comando local (usando archivos locales) a un comando remoto.
Sé que es posible hacer algo como esto:
[user@local ~]$ head -c 5 /dev/urandom | ssh [email protected] "cat"
... pero me gustaría saber si hay alguna manera de hacer esto a través de la consola SSH, al igual que el scp
comando que hace referencia tanto a archivos locales como remotos:
[user@remote ~]$ scp test.txt remote:/new.txt
No es deseable copiar el archivo local al servidor remoto, solo me gustaría redirigir la salida.
**Ambas máquinas ejecutan Linux (bash).
Respuesta1
Creo que la mejor manera es redirigir la salida a un archivo y luego enviar ese archivo al host remoto y luego ejecutar el comando cat allí.
$ head -c 5 /dev/urandom > random && scp ./random user@remoteip:/path/. && cat /path/random
Espero que esto satisfaga sus necesidades. Responde si no es así.
Respuesta2
Esto suena similar a esta pregunta:
Entonces, parece que el consenso es configurar una sesión ssh invertida con la opción -R y ejecutar la salida estándar a través de ella.