Risposte:
ssh user@remotehost "bash -s" < local_script.sh
-s fa bash leggere dallo standard input.
Se devi passare argomenti al tuo script:
ssh user@remotehost "bash -s" -- < local_script.sh "your_arg" "--aswitch" "avalue"
Nota il doppio trattino --(che indica la fine delle opzioni del comando) e le virgolette attorno agli argomenti.
-se hai bisogno solo bashse vuoi davvero forzare l'uso bash. Di solito puoi semplicementessh user@remotehost < local_script.sh
la risposta di phoibos è il lavoro per me.
ssh user@remotehost "bash -s" < local_script.sh
Ma devi essere sicuro che il tuo script chiami esplicitamente exit o rimarrai connesso al server remoto dopo l'esecuzione dello script.
Per essere brevi, non dimenticare di mettere questo alla fine di local_script.sh:
exit 0