web-dev-qa-db-fra.com

Comment exécuter un script Shell local sur un serveur distant via SSH?

Je souhaite exécuter un script Shell local sur un ordinateur distant avec SSH. Comment puis-je faire ceci?

15
Priyanka
ssh user@remotehost "bash -s" < local_script.sh

-s fait lire bash à partir de l'entrée standard.

Si vous devez passer des arguments à votre script:

ssh user@remotehost "bash -s" -- < local_script.sh "your_arg" "--aswitch" "avalue"

Notez le double tiret -- (signifiant la fin des options de la commande) et les guillemets autour des arguments.

16
phoibos

phoibos répond est le travail pour moi.

ssh user@remotehost "bash -s" < local_script.sh

Mais vous devez vous assurer que votre script appelle explicitement exit ou vous resterez connecté au serveur distant après son exécution.

Pour être bref, n'oubliez pas de mettre ceci à la fin de local_script.sh:

exit 0
3
mickours