Ho un programma su un host remoto, di cui devo automatizzare l'esecuzione. Il comando esegue quel programma, sulla stessa macchina, assomiglia a questo:
/path/to/program -a file1.txt -b file2.txt
In questo caso, file1.txte file2.txtsono utilizzati per cose completamente diverse all'interno del programma, quindi non posso semplicemente catfarli insieme. Tuttavia, nel mio caso, il file1.txte file2.txtche voglio passare al programma esistono solo sul mio dispositivo, non sull'host in cui devo eseguire il programma. So che posso alimentare almeno un file tramite SSH passandolo attraverso stdin:
cat file1.txt | ssh host.name /path/to/program -a /dev/stdin -b file2.txt
ma, dal momento che non mi è permesso archiviare file sull'host, ho bisogno di un modo per ottenere anche file2.txtlì. Sto pensando che potrebbe essere possibile attraverso l'abuso delle variabili di ambiente e l'uso creativo di cate sedinsieme, ma non conosco gli strumenti abbastanza bene per capire come li userei per raggiungere questo obiettivo. È fattibile e come?
catesednon sono la soluzione qui.