40 votes

Comment créer un raccourci Terminal pour une connexion SSH sur Mac OS X?

C'est nul d'ouvrir le Terminal à chaque fois et d'écrire une commande SSH complète. Comment puis-je créer un raccourci Terminal de connexion SSH sur Mac OS X 10.6.8 (Snow Leopard) ?

J'ai aussi un port personnalisé auquel me connecter.

3voto

Johan Pelgrim Points 2821

Si vous souhaitez un fichier que vous pouvez ouvrir pour lancer une session, vous pouvez facilement créer un .inetloc. Dans TextEdit, saisissez une URL SSH vers votre hôte, par exemple :

ssh://username@hostname/path

TextEdit reconnaîtra cela comme une URL. Faites glisser l'URL sur votre bureau et cela créera un .inetloc comme ceci :

    URL
    ssh://username@hostname/path

Ensuite, vous pouvez placer ce fichier n'importe où, comme dans votre Dock, ou l'ouvrir avec un lanceur tel que Quicksilver.

J'aurais recommandé le plugin SSH pour Quicksilver, mais la dernière version que je peux trouver, v.84, plante les versions plus récentes de QS que la 54 (3815).

3voto

harshil Points 1

Pour ouvrir rapidement une connexion ssh depuis presque n'importe où sur votre Mac, suivez les étapes suivantes :

  • Ouvrez TextEdit et saisissez votre chaîne de connexion sous la forme suivante : ssh://user@host.com
  • Sélectionnez toute la ligne et faites glisser-déposer sur le Bureau. Le résultat sera un fichier *.inetloc.
  • Déplacez le fichier dans un dossier de votre choix. J'en ai créé un nommé ~/connections qui contient tous mes fichiers *.inetloc. Vous pouvez renommer ce fichier comme vous le souhaitez, voire en changer l'icône.
  • Désormais, vous pouvez faire glisser et déposer le fichier *.inetloc vers le Dock, la barre latérale ou la barre d'outils du Finder, ou n'importe où ailleurs. (Il peut même être sélectionné avec Spotlight)
  • Si vous utilisez LaunchBar, ouvrez l'écran de configuration de Launchbar (Commande-Y) et ajoutez une autre règle pour votre dossier de connexions. Désormais, vos connexions SSH peuvent être ouvertes avec LaunchBar. Je pense que vous pouvez faire quelque chose de similaire avec LaunchBar et Quicksilver, permettant un lancement rapide de vos raccourcis SSH.

Créez des raccourcis ssh d'accès rapide

1voto

ticklemeozmo Points 11

Si vous utilisez Quicksilver, il existe une excellente extension appelée RemoteHosts qui analysera automatiquement un fichier ~/.hosts ou même votre fichier ~/.ssh/known_hosts pour l'autocomplétion.

Se connecter à un nouvel hôte est aussi rapide que d'ouvrir Quicksilver (CMD-Espace), puis de taper suffisamment de caractères de l'hôte pour qu'il soit unique, et enfin d'appuyer sur Entrée.

1voto

jason Points 158

Vous pouvez créer un fichier dans votre répertoire local bin

/usr/local/bin/dev

Avec le contenu suivant:

#!/bin/bash
ssh -p 12345 username@www.mydomain.com 

Rendez-le exécutable

chmod a+x /usr/local/bin/dev

Que vous pouvez ensuite appeler depuis le terminal en utilisant

dev

Et vous pouvez ensuite créer une tâche d'automatisation pour l'ouvrir

tell application "Finder" to set theSel to selection

tell application "Terminal"
    set theFol to POSIX path of ((item 1 of theSel) as text)
    if (count of windows) is not 0 then
        do script "/usr/local/bin/dev2" in window 1
    else
        do script "/usr/local/bin/dev2"
    end if
    activate
end tell

Vous pouvez également créer un raccourci depuis le lanceur ou une touche de raccourci sur votre clavier

Lanceur: Faites glisser l'icône depuis l'automator enregistré dans la barre de dock

Raccourci clavier:

créez un service dans l'automator
ouvrez les services système -> clavier -> raccourcis -> raccourcis d'application -> saisissez le titre de l'automator et le raccourci clavier

0voto

iconoclast Points 3099

Si la partie qui vous embête est de taper une commande ssh longue et complexe, mais que vous ne vous dérangez pas d'ouvrir Terminal, et pour une raison quelconque vous ne voulez pas utiliser les approches précédentes, alors vous pouvez également utiliser des alias ou des fonctions. Ajoutez quelque chose comme ceci à votre fichier shell dotfile (.profile ou .bash_profile ou .bashrc ou .cshrc ou .zshrc ou autre) :

alias connect.dev='ssh -p 12345 yourusername@dev.somehost.net'

Le seul avantage que je peux voir par rapport aux autres approches est que (en zsh au moins, et je pense en bash) vous pouvez utiliser l'auto-complétion de commande pour voir tous vos serveurs auxquels vous pouvez vous connecter. Par exemple, disons que vous avez 25 serveurs différents auxquels vous vous connectez, et vous ne voulez pas vous rappeler tous les noms/alias que vous leur avez donnés dans le fichier .ssh/config. Si tous les alias commencent par la même chose, comme 'connect.', alors il vous suffit de taper connect.[TAB] à l'invite de commande, et vous verrez toutes les complétions possibles. (Avertissement : vous pourriez avoir besoin de personnaliser votre shell pour que cela fonctionne, mais je crois que cela fonctionnera par défaut dans zsh et probablement aussi dans bash.)

Si la partie qui vous embête est d'ouvrir Terminal, alors vous pourriez essayer d'utiliser quelque chose comme DuckBill, bien que les seules raisons auxquelles je pense pour exécuter ssh EN DEHORS de Terminal pourraient éventuellement être pour exécuter des programmes serveurs X Windows ou un tunnel ssh.

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