Question

  1. J'ai créé un alias pour une commande qui utilise un fichier de l'un de mes répertoires.

  2. Cet alias est chargé dans .bash_profile dans le format suivant: alias name_of_command = 'ssh -i name_of_keyfile user @ ip_address'

  3. Je veux pouvoir utiliser l'alias de n'importe où sur mon système, mais le fichier clé (aka name_of_keyfile) n'est présent que dans un répertoire qui ne fait pas partie de mon chemin $ (c'est un sous-répertoire de Dropbox).

  4. J'ai essayé d'ajouter ce répertoire au chemin avec la commande suivante: Export Path = $ path: / name / of / répertoire

Je pouvais voir que cela a été nominalement réussi parce que lorsque je saisis $ Path, le nouveau répertoire apparaît à la fin de la variable $ Path.

  1. Cependant, lorsque j'essaie de réaliser ma commande SSH, j'obtiens l'erreur: avertissement: fichier d'identité, fichier de clés non accessible: pas de fichier ou de répertoire de ce type.
Était-ce utile?

La solution

Le chemin est généralement utilisé pour rechercher des exécutables, et non des fichiers de données en général.

Votre meilleur pari est probablement de changer l'alias afin que le fichier de clé soit un nom de chemin pleinement qualifié, quelque chose comme:

alias myssh='ssh -i $HOME/ssh/mykeyfile.ppk pax@example.com'

Avec un fichier clé entièrement qualifié, peu importe où vous vous trouvez actuellement dans le système de fichiers (en supposant ssh lui-même est sur votre chemin quelque part, bien sûr, mais c'est une autre affaire).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top