10 votes

Donner un nom court pour un répertoire souvent ouvert via le terminal

Chaque fois que je veux me déplacer vers un répertoire que j'utilise très souvent, je dois taper ce long chemin de répertoire :

cd /media/prasanth/01D0F888E7BC91801/github projects

ou je dois utiliser l'interface graphique pour accéder au dossier et ouvrir le terminal.

Est-il possible d'assigner ce long chemin à un seul nom et de le saisir via le terminal comme

cd mygitfiles

?

3voto

amon Points 131

Bash a une petite fonctionnalité pratique appelée CDPATH. Lorsque cd foo recherche un chemin relatif, il regarde dans le répertoire courant par défaut. En définissant CDPATH sur une liste de préfixes de chemin séparés par des deux-points, nous pouvons nous rendre à cette cible plutôt que si aucune correspondance n'a été trouvée. Cela fonctionne de manière similaire à la variable PATH lors de la recherche de fichiers exécutables.

Dans votre cas, vous pourriez export CDPATH=.:/media/prasanth/01D0F888E7BC91801/github/ dans votre ~/.bashrc, puis exécuter cd projects/foo de n'importe où pour accéder à /media/prasanth/01D0F888E7BC91801/github/projects/foo.

Cependant, cela ne fonctionnera pas si votre répertoire actuel contient une entrée correspondante, ce qui peut entraîner des modes d'erreur confus. Certaines personnes jurent par ces méthodes, je préfère plutôt les liens symboliques dans le répertoire home comme suggéré par Paul Grove.

2voto

Yamodax Points 238

Je taperais

cd /media/prasanth/01D0F888E7BC91801/github projects #demo-proj

la première fois que j'exécute cette commande. Le contenu après # est un commentaire.

Ensuite, pour l'appeler, je ferais CtrlR et je taperai de (une sous-chaîne pratique de demo-proj), jusqu'à ce que la commande précédente apparaisse.

(reverse-i-search)`de': cd /media/prasanth/01D0F888E7BC91801/github projects #demo-proj

Je peux appuyer de nouveau sur CtrlR pour des utilisations antérieures encore plus anciennes.


Cela ne nécessite pas de définir/remplacer des alias permanents. Je fais également cela pour les commandes longues ou même netstat -tulpn que je trouve cryptiques.

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