125 votes

Comment puis-je changer automatiquement de répertoire lors d'une connexion ssh ?

J'essaie d'obtenir ssh pour passer automatiquement à un répertoire particulier lorsque je me connecte. J'ai essayé de faire fonctionner ce comportement en utilisant les directives suivantes dans le fichier ~/.ssh/config :

Host example.net
LocalCommand "cd web"

mais chaque fois que je me connecte, je vois ce qui suit :

/bin/bash: cd web: No such file or directory

bien qu'il y ait définitivement un web dans mon répertoire personnel. Même l'utilisation d'un chemin absolu donne le même message. Pour être clair, si je tape cd web Après m'être connecté, j'arrive dans le bon dossier.

Qu'est-ce que je rate ici ?

EDITAR:

Différentes combinaisons de guillemets/chemins absolus donnent des messages d'erreur différents :

LocalCommand "cd web"
/bin/bash: cd web: No such file or directory

LocalCommand cd web
/bin/bash: line 0: cd: web: No such file or directory

LocalCommand cd /home/gareth/web
/bin/bash: line 0: cd: /home/gareth/web: Input/output error

Cela me fait penser que les guillemets ne devraient pas être là, et qu'il y a une autre erreur.

2voto

James L Points 5835

Avez-vous essayé sans les guillemets ? Les seuls exemples que j'ai vus ne les ont pas, donc avec eux, il pourrait essayer d'exécuter cd\ web comme une commande.

2voto

Vous pouvez aussi essayer ceci, avec l'option -t :

ssh server -t "cd /my/remote/directory; bash"

1voto

Zafar Points 241

Essayez d'utiliser RemoteCommand à la place, par exemple

Host myhost
  HostName IP
  User ubuntu
  IdentityFile ~/.ssh/id_rsa
  RemoteCommand cd web; $SHELL -il

RemoteCommand : Spécifie une commande à exécuter sur la machine distante après avoir réussi à se connecter au serveur. ( man ssh_config )

0voto

bomben Points 105

Vous avez peut-être besoin de créer ~/.bash_profile bien que vous ayez déjà un ~/.bashrc .

Sur mon debian système le ~/.bashrc n'a pas été exécuté lors de la connexion avec sshpass .

Depuis que j'ai ajouté cd directory à la nouvelle ~/.bash_profile ça a bien marché.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X