41 votes

Est-ce que je peux ajouter un raccourci pour remplacer un chemin dans Linux ?

Par exemple, je vais toujours à ce chemin:

/utilisateur/quelquechose/quelquesdossiers/quelquepart

mais je ne veux pas taper

cd /utilisateur/quelquechose/quelquesdossiers/quelquepart

dans le terminal tout le temps, est-ce que je peux avoir un raccourci pour le faire? par exemple, est-ce que je peux faire quelque chose comme

cd commandPlace

pour remplacer le chemin?

58voto

Dalroth Points 2468

Deux raccourcis que j'utilise tout le temps pour des choses comme celle-ci :

Aliases

alias somedir='cd /home/john/www/something/'

Ensuite, vous pouvez taper somedir pour aller dans ce répertoire. Ajoutez-les à votre fichier .bashrc.

Liens symboliques

ln -s /long/path/to/some/other/folder /shortcut

Cela créera un fichier à /shortcut qui pointe vers /long/path/to/some/other/folder. Ensuite, vous pouvez taper cd /shortcut à la place. L'inconvénient de cela est que cela remplit rapidement votre répertoire racine (ou n'importe quel répertoire dans lequel vous mettez les liens). Je préfère les alias.

36voto

UltimateBrent Points 470

Vous pouvez utiliser la variable d'environnement CDPATH pour cela. Selon la page de manuel Bash :

CDPATH

Le chemin de recherche pour la commande cd. Il s'agit d'une liste de répertoires séparés par des deux-points dans lesquels l'interpréteur de commandes recherche les répertoires de destination spécifiés par la commande cd. Une valeur d'exemple est ".:~:/usr".

Dans votre cas, vous pouvez définir

export CDPATH=.:/user/something/somefolders

dans ~/.bashrc, puis en tapant cd somewhere, vous irez à /user/something/somefolders/somewhere (en supposant qu'il n'y a pas de répertoire nommé somewhere dans le répertoire actuel).

Alternativement, si vous ne voulez pas faire référence au répertoire somewhere par son nom réel, vous pourriez créer un répertoire caché contenant un lien symbolique vers /user/something/somefolders/somewhere avec le nom que vous souhaitez utiliser. Il pourrait également contenir des liens vers d'autres répertoires que vous visitez fréquemment. Ensuite, configurez CDPATH pour inclure le chemin vers ce répertoire caché. Notez cependant qu'avec cette méthode, si vous utilisez cd somewhere puis cd .., vous vous retrouverez dans le répertoire caché. Cela peut être un problème pour vous ou non.

14voto

Janne Pikkarainen Points 7357

Je tends à utiliser la recherche interactive de bash tout le temps. Essayez-le. Invoquez-le avec ctrl+r et commencez à taper une partie de votre chemin, comme quelque part. Probablement votre commande cd apparaîtra. :)

11voto

Mohsin Points 11

Une autre chose que vous pouvez faire est de stocker le chemin en question dans une variable d'environnement. Ajoutez ces lignes à votre fichier ~/.profile:

somedir=/user/something/somefolders/somewhere
export somedir

Vous pouvez ensuite accéder au répertoire avec

cd "$somedir"

9voto

robert Points 1892

Regardez la commande "alias".

Dans csh:

alias commandplace "cd /utilisateur/quelquechose/desdossiers/quelquepart"

Dans sh:

alias commandplace="cd /utilisateur/quelquechose/desdossiers/quelquepart"

Mais j'aime la solution du lien symbolique:

ln -s /utilisateur/quelquechose/desdossiers/quelquepart ~/commandplace

Remarque : ln prend des arguments dans le même ordre que cp.

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