Tengo un programa en un host remoto, cuya ejecución necesito automatizar. El comando ejecutar ese programa, en la misma máquina, se parece a esto:
/path/to/program -a file1.txt -b file2.txt
En este caso, file1.txty file2.txtse usan para cosas completamente diferentes dentro del programa, por lo que no puedo simplemente catjuntarlas. Sin embargo, en mi caso, el file1.txty file2.txtque quiero pasar al programa solo existen en mi dispositivo, no en el host donde necesito ejecutar el programa. Sé que puedo alimentar al menos un archivo a través de SSH pasándolo stdin:
cat file1.txt | ssh host.name /path/to/program -a /dev/stdin -b file2.txt
pero, dado que no se me permite almacenar archivos en el host, también necesito una forma de obtenerlos file2.txtallí. Estoy pensando que podría ser posible mediante el abuso de las variables de entorno y el uso creativo de caty sedjuntos, pero no conozco las herramientas lo suficientemente bien como para entender cómo las usaría para lograr esto. ¿Es factible y cómo?
catysedno son la solución aquí.