Comment configurer un raccourci vers un répertoire dans Mac OS X Terminal?

18

Ce que j'aimerais pouvoir faire, c'est quand je suis dans Terminal, c'est taper:

cd myFolderShortcut

Et pour qu'il aille directement dans un répertoire, j'ai configuré cet alias. Est-ce possible?

J'ai fait un google pour cela et les alias sont peut-être ce que je veux, mais je n'ai pas pu le faire fonctionner.

benhowdle89
la source
Si ce que vous voulez est une commande plus courte pour cd'ing dans un répertoire spécifique, tout ce que vous devez faire est d' ajouter ce qui suit à votre ~/.bashrc: alias myalias='cd /path/to/directory'. Vous pouvez remplacer myaliaspar n'importe quel nom de commande personnalisé que vous souhaitez.
Consultez github.com/joelthelion/autojump/wiki , cela pourrait également fonctionner pour vous.
Daniel Beck

Réponses:

36

Vous n'avez pas besoin d'un fichier de raccourci ou quelque chose comme ça.


Vous pouvez configurer un alias en ~/.bash_profileajoutant la ligne suivante, il vous suffit donc de taper myFolderShortcutpour y aller (sans cd):

alias myFolderShortcut='cd /Users/danielbeck/Documents'

Vous devez également taper la commande ci-dessus ou

source ~/.bash_profile

pour que cela prenne effet. Cela fonctionne à partir de n'importe quel répertoire, mais nécessite que votre shell de connexion soit bash(qui est la valeur par défaut d'OS X)


Vous pouvez bien sûr créer des liens symboliques vers d'autres répertoires de votre répertoire personnel. Ensuite, lorsque vous ouvrez Terminal et que vous êtes dans votre répertoire personnel, cding vous emmène dans le répertoire lié.

ln -s /Users/danielbeck/Documents/Projects myProjectsDir

Tapez ensuite cd myProjectsDiret vous y êtes (le chemin affiché contient myProjectsDircependant, pas Documents/Projects).

Le lien symbolique apparaîtra dans le Finder. Pour le masquer, tapez chflags hidden myProjectsDir.

Cela ne fonctionnera que lorsque vous serez dans votre répertoire personnel pour commencer ( cdsans arguments vous y emmène rapidement; vous pouvez taper les deux commandes sur la même ligne:) cd && cd myProjectsDir.

Daniel Beck
la source
cdtout comme cd ~mon alias préféré.
Rob
@Rob Ce n'est pas techniquement un alias. cdsans argument implique simplement ~. Au fait, j'aime cd -mieux.
Daniel Beck
Salut, je n'ai pas réussi à faire fonctionner votre technique. Je voulais créer un raccourci vers mon répertoire solr. Il vit actuellement dans mon: alias solr = 'cd / Applications / MAMP / htdocs / website / WhoAt / solr / whoat /' Peut-être que mon chemin n'est pas correct?
Leon Gaban
@Leon Utilisez-vous le bashshell?
Daniel Beck
Je pense que j'utilise par défaut je pense ...
Leon Gaban
4

Je sais que c'est vieux, mais cela pourrait aider quelqu'un.

Après avoir suivi la réponse de @Daniel Beck ci-dessus et ajouté l'alias au bash_profile comme il l'a mentionné, vous devez taper ce qui suit dans la fenêtre du terminal:

source .bash_profile

Cela fera fonctionner tous vos alias.

J'ai ceci de cette réponse sur le débordement de pile. ça a marché pour moi. J'espère que ça marche pour quelqu'un qui cherche ça ...

Comment créer un raccourci terminal vers ce chemin?

Salman Hasrat Khan
la source
2
Merci, cela m'a été utile. Cela source ~/.bash_profilepourrait aussi être une façon plus générale de l'écrire
mattsven
1

Juste une chose que je voulais ajouter, car cela m'est arrivé et m'a pris un peu de temps pour trouver l'erreur. J'ai écrit alias myFolderShortcut = 'cd /Users/danielbeck/Documents' parce que j'aime avoir des espaces entre mes signes égaux. Mais cela m'a donné une erreur.

Donc, après avoir supprimé les espaces, cela a fonctionné.

Alors utilisez

alias myFolderShortcut='cd /Users/danielbeck/Documents'

J'espère que cela aidera quelqu'un à l'avenir.

Peter
la source
0

Une autre approche consiste à utiliser la variable d'environnement CDPATH. Cela fonctionne pour la cdcommande comme PATH fonctionne pour exécuter des programmes - si vous tapez une cdcommande avec un paramètre qui ne commence pas par /(ou ~), le shell recherche un répertoire de ce nom sous chaque composant de CDPATH. Par exemple, si vous souhaitez accéder rapidement aux répertoires suivants:

  • /Users/benhowdle89/Documents/Projects/Project42
  • /Applications/MAMP/htdocs/website/WhoAt/solr/whoat
  • /the/quick/brown/fox/jumps/over/the/lazy/dog

puis définissez CDPATH sur la valeur suivante

:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/WhoAt/solr:/the/quick/brown/fox/jumps/over/the/lazy

et vous serez en mesure d'utiliser les commandes cd Project42, cd whoatet cd dog, etc. La valeur commence par deux points ( :) de manière à inclure une entrée null initiale. Dans certains shells, cela est nécessaire pour cdcommencer par chercher dans le répertoire courant.

Cela devrait fonctionner dans la plupart des shells de type POSIX; par exemple, bashet ksh. Pour bash, mettez une commande comme

export CDPATH=:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/…

dans votre ~/.bash_profileou ~/.bashrc. (Si vous utilisez ~/.bashrc, vous pourrez peut-être ignorer le export.) Pour les shells de type csh, utilisez cdpathet la syntaxe de style csh appropriée.

G-Man dit «Réintègre Monica»
la source