J'ai un lien symbolique
~/link -> ~/a/really/long/path
Quand je fais
cd ~/link
cd ..
il me faut
~
mais je veux aller
~/a/really/long
Y a-t-il un moyen de faire cela?
J'utilise bash.
bash
cd-command
Xodarap
la source
la source
cd ~/a/really/long/path
alorscd ..
vous met en place~
pour le moment? Je ne peux pas reproduire ça.~/a/really/long/path
puis cd vers celui-là puis vers..
. Vous devriez vous retrouver dans ~ (en supposant que c'est là que vous avez commencé).Réponses:
Bash (ainsi que ksh, zsh et même ash) suit les changements de répertoire de sorte que
cd /foo/bar && cd ..
vous amène toujours à/foo
même s'ilbar
s'agit d'un lien symbolique. Passez l'-P
option pourcd
ignorer la modification suivie et suivez la structure de répertoire «physique»:Voir
help cd
ouman builtins
pour la documentation sur la commande bashcd
. Si vous n'aimez pas vraiment la fonction de suivi de répertoire, vous pouvez la désactiver avecset -P
en bash (set -o no_chase_link
en zsh).la source
-P
ou a-o physical
déjà réglé?Vous pouvez également utiliser readlink pour trouver le chemin physique vers ce répertoire, puis aller un répertoire plus haut:
la source
Une méthode que vous pourriez utiliser est d'utiliser un alias au lieu d'un lien symbolique pour vous amener à ~ / a / vraiment / long / chemin. C'est la méthode que j'utilise, car alors je peux simplement taper une simple commande de lettre 1/2 / et cetera au lieu de cd symlink
la source