Créer un lien symbolique naviguer avec cd


3

Est-il possible de créer un lien symbolique pour faciliter la modification des répertoires? comme

ln -s /Users/mles/Documents /usr/local/bin/d

donc je peux cd d au lieu de cd ~/Documents?


Voici une réponse générique à cette question: apple.stackexchange.com/a/97312/22003 .
daniel Azuelos

Réponses:


3

Le problème avec la création d'un lien symbolique de cette manière est que vous êtes limité à l'endroit où le lien symbolique est créé. Cela ajoute également au problème si vous avez un répertoire ../d/.. quelque part sur votre système.

Il y a plusieurs façons de résoudre ce problème ....

Créer un alias

En terminal, vous pouvez créer un alias en émettant la commande

alias cdd='cd ~/Documents'

L'avantage ici est que cela fonctionnera n'importe où sans avoir à l'ajouter à votre PATH.

Pour le rendre permanent, ajoutez la commande à votre .bash_profile dans votre répertoire personnel.

Faire un cd variable

En outre, dans votre .bash_profile ajouter ce qui suit

shopt -s cdable_vars 
export Docs=$HOME/Documents

Maintenant, quand vous tapez cd Docs ça va s'étendre HOME quel que soit votre répertoire utilisateur plus le répertoire que vous avez spécifié. ( /Users/yourusername/Documents )

Personnellement, je l'ai fait avec une variable appelée icloud comme suit:

export  icloud=$HOME/Library/Mobile\ Documents/com~apple~CloudDocs/

Maintenant, je peux faire référence à l'emplacement de mes documents iCloud sans avoir à me souvenir de ce long chemin.


1

Vous pouvez définir des variables pointant vers vos répertoires. Par exemple:

[~]$ export d=~/Documents

[~]$ ls -l $d
[~]$ cd $d
[~/Documents]$ 

En bash, vous pouvez utiliser cdable_vars possibilité de pouvoir cd sans précéder $:

[~]$ shopt -s cdable_vars
[~]$ export d=~/Documents

[~]$ cd d
[~/Documents]$ 

Mais cela ne permet pas de laisser tomber $ pour d'autres commandes, donc ls -l d ne fonctionnera pas.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.