samedi 1 mars 2014

Créer un lien symbolique sous Mac OS

Si vous avez l'habitude de travailler en ligne de commande dans le Terminal de Mac OS, il vous est probablement arrivé de vouloir appeler une application (pour faire des requêtes SQL, lancer votre IDE pour éditer votre fichier httpd.conf en dehors de la console) ou vous rendre dans un répertoire de votre arborescence pour copier des fichiers...

Les liens symboliques vont vous permettre de réduire et simplifier considérablement vos écritures dans le Terminal afin de remplacer ce genre d'expression très courante : "/Applications/XAMPP/xamppfiles/bin/mysql" par quelque chose d'aussi simples que ça : "mysql".


Qu'est ce qu'un lien symbolique ?


Les utilisateurs de Windows les connaissent mieux sous le nom de "raccourci" : c'est exactement la même logique.
Un lien symbolique est une sorte d'alias, de raccourci donc, qui pointe vers le fichier binaire d'une application ou vers un répertoire.  Ces raccourcis sont habituellement stockés dans le dossier /bin/ de votre dossier /usr/ : "/usr/local/bin" ou "/usr/bin/". Vous pouvez vous y rendre en tapant ce chemin dans votre Finder ("Aller" -> "Aller au dossier").  Une fois un lien symbolique créé, vous pouvez l'appeler en tapant simplement son alias dans votre terminal. Le système va se charger de balayer le répertoire bin afin de rechercher votre alias dans sa liste de raccourci et appeler sa cible.

Exemple : vous avez remarqué le lien symbolique "php" dans votre répertoire "/usr/bin/" ?  Ouvrez donc votre terminal, et tapez ceci :

php -v


  • "php" : alias, ou lien symbolique, 
  • "-v" : une petite commande qui va vous afficher la version de PHP installée sur votre machine.
Ca devrait vous afficher... la version de PHP que vous utilisez sur votre machine.

Sympa non ?

Je vous propose maintenant de créer un nouveau lien symbolique vers un éditeur de texte comme TextMate que nous allons utiliser pour éditer notre fichier "hosts" par exemple.

Comment créer un lien symbolique sous Mac OS ?


Nous allons créer un lien symbolique vers la console de TexteMate, afin de pouvoir appeler TextMate lorsqu'on voudra éditer un fichier de configuration (votre fichier hosts par exemple).

Ouvrez votre terminal, et entrez cette ligne de commande : 

ln -s /Applications/TextMate.app/Contents/Resources/mate /usr/local/bin/mate

Si on décortique :
  • "ln -s" : c'est une commande bien connu des utilisateurs Linux qui va vous permettre de créer un lien vers une cible donnée. Elle prend en compte 2 paramètres : la cible du lien et son nom
  • "/Applications/TextMate.app/Contents/Resources/mate" : premier paramètre de la commande, soit la cible de votre lien. Ici, on cible le fichier binaire "mate", mais on aurait très bien pu cibler un répertoire ('/Users/nomutilisateur/Documents" par exemple). Pour vous simplifier la tâche et éviter des fautes de syntaxe, je vous conseille de faire glisser et déposer votre répertoire/fichier binaire dans la fenêtre de votre Terminal : il affichera tout seul le chemin exacte vers celui-ci.
  • "/usr/local/bin/mate": le nom du lien symbolique. Ici, le lien symbolique se nommera "mate" mais on aurait pu l'appeler "textmat" ou ce que vous voulez (préférez quelque chose de logique et simple à retenir, et pas trop long...). La partie qui précède étant pour préciser le répertoire où enregistrer le lien symbolique.
Appuyez sur "Entrer" pour executer la commande. C'est tout !

Pour vérifier que l'opération s'est bien déroulée, tapez "mate --help" dans votre terminal (--help est une instruction qui permet d'obtenir de l'aide sur une commande en particulier).
Vous pouvez aussi voir le fichier représentant ce lien symbolique via le Finder en vous rendant dans le répertoire "/usr/local/bin/".

Vous souhaitez éditer votre fichier hosts directement dans TextMate ? Tapez simplement "mate /etc/hosts" et il s'ouvrira automatiquement dans votre éditeur. C'est quand même plus pratique ! Cela marche pour tous les fichiers qui peuvent s'ouvrir avec TextMat (mate "Xampp/htcdos/monsite/index.php" ou que sais-je...).

Quelques informations pratiques


Pour les adeptes de Sublime Text 2, sachez que le fichier binaire se trouve habituellement dans ce répertoire : "/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl".

Si vous utilisez Xampp, vous pouvez créer un lien symbolique vers mysql pour executer des requêtes SQL directement dans votre console : "/Applications/XAMPP/xamppfiles/bin/mysql".

J'espère que cet article vous aura bien aidé !  Si vous avez des questions, soyez libre de les poser dans les commentaires.

Aucun commentaire:

Enregistrer un commentaire