Comment utiliser la commande cd sous Linux

Contenu

Un graphique d'une fenêtre de terminal sur un système portable Linux.

Certaines commandes Linux sont si familières que nous ne réalisons même pas que nous les utilisons. Les cd La commande pour changer de répertoire est l'une de ces. Il existe quelques astuces qui peuvent vous aider à être plus efficace avec cdOu vous pouvez vous en débarrasser complètement.

Une commande à laquelle vous pensez rarement

Clignote toute la journée, tous les jours, mais la plupart du temps tu ne te rends pas compte. A moins que quelque chose ne rentre dans tes yeux, vous pensez rarement à ce petit mouvement régulier. Certaines commandes Linux sont comme ceci. Planant au-dessus de la périphérie de votre conscience. Même lorsque vous les utilisez quotidiennement, ils n'attirent pas votre attention car ils sont très petits et simples.

Dans la première heure d'utilisation d'un ordinateur Linux, vous apprendrez à utiliser le cd commande incluse avec Bash et d'autres shells. Peut-être avez-vous déjà eu l'habitude de l'utiliser sur un autre système d'exploitation et n'avez pas eu besoin d'explications. Changer le répertoire de travail actuel, vérité? Qu'y a-t-il d'autre à savoir?

Bon, plus que tu ne le penses. Ensuite, quelques conseils et suggestions sont inclus qui peuvent améliorer votre efficacité.

Opérations cd standard

Pour être complet, Passons rapidement en revue les utilisations standard de cd.

Si nous sommes dans le répertoire home, mais nous voulons changer pour un situé à /usr/lib/firefox/browser, et plus tard revenir au répertoire de base, nous pouvons utiliser les commandes suivantes:

cd /usr/lib/firefox/browser/
cd /home/dave

Vous n'avez pas besoin d'entrer le chemin complet du répertoire; vous pouvez utiliser la saisie semi-automatique. Pour chaque partie d'un itinéraire, après avoir tapé suffisamment de lettres pour distinguer le nom du répertoire des autres, appuyez sur Tab pour remplir automatiquement le nom du répertoire.

Par exemple, tapez ce qui suit dans la ligne de commande:

cd /usr/lib/fire

À présent, appuyez sur Tab et le shell remplira le reste du répertoire “à présent.” pour vous. si vous ajoutez “/ b” jusqu'au chemin et appuyez à nouveau sur Tab, ajouter le répertoire “navigateur” commander.

Le shell ajoute une barre oblique de fin afin que vous puissiez répéter la procédure de complétion de tabulation. C'est aussi à cause de cela qu'il y a une barre oblique dans la première commande. Il n'y en a pas dans le second car c'était écrit.

Vous pouvez utiliser le tilde (~) comme moyen abrégé de revenir rapidement au répertoire personnel de n'importe où dans le système de fichiers; tapez simplement ce qui suit:

disque ~

Ce sont des exemples de chemins absolus, où vous fournissez le chemin complet de la racine du système de fichiers au répertoire de destination, pour cd.

Les chemins relatifs sont référencés à partir du répertoire de travail actuel. Dans le répertoire personnel, il y a un répertoire qui s'appelle work . Vous pouvez utiliser le tree commande à afficher l'arborescence des répertoires dans work annuaire: tapez simplement ce qui suit:

arbre

Les work répertoire contient un répertoire appelé dev . De plus, il existe un répertoire appelé dev dans le répertoire racine du système de fichiers. Vous pouvez utiliser ls avec -d (annuaire) pour voir chacun de ces. Les -hl L'option (lisible par l'homme, longue liste) indique ls pour utiliser des unités faciles à lire pour la taille des répertoires et la liste longue.

Si vous écrivez dev, le shell suppose que vous voulez dire le “développeur” Nous voulons trouver des fichiers contenant le mot. Pour le forcer à regarder “développeur” dans le répertoire racine, ajoutez simplement une barre oblique pour représenter la racine du système de fichiers, comme il est montré dans ce qui suit:

ls -d dev -hl
ls -d / dev -hl

Les cd la commande se comporte comme ls a ce respect. Si vous vous référez au répertoire comme dev, comme il est montré dans ce qui suit, suppose qu'il fait référence au répertoire dans le work annuaire:

développeur de CD

Sans barre oblique, les chemins plus longs sont également censés commencer à partir du répertoire de travail actuel, comme il est montré dans ce qui suit:

dev/mobile/android

EN RELATION: 15 caractères spéciaux que vous devez connaître pour Bash

Changer de répertoire avec Double Dot

L'identifiant à double point représente le répertoire parent à partir duquel vous exécutez actuellement. Si vous êtes dans un sous-répertoire profondément imbriqué, vous pouvez utiliser .. avec cd pour passer au répertoire parent dans lequel vous vous trouvez.

Cela le déplace vers le haut de deux répertoires dans l'arborescence des répertoires. Si vous ajoutez plus .. en commande, vous permet de déplacer un nombre arbitraire de niveaux vers le haut dans l'arborescence des répertoires.

Écrivez ce qui suit:

CD ..
CD ../..

Vous pouvez également créer un ensemble d'alias pour effectuer ces manœuvres pour vous., écrivant ce qui suit:

alias .2="CD ../.."
alias .3="CD ../../.."

Vous pouvez les utiliser de la même manière que les commandes elles-mêmes.

Pour que les alias restent cohérents entre les redémarrages de votre ordinateur, vous devez les ajouter à votre .bashrc O .bash_aliases Record.

EN RELATION: Comment créer des alias et des fonctions shell sous Linux

Passer facilement entre deux répertoires

Le scénario (-) est un autre symbole qui a une fonction spéciale. Remplacez votre répertoire par celui d'où vous venez d'arriver.

Pour cet exemple, disons que c'est dans le répertoire “c”. Vous pouvez utiliser cd changer de répertoire “chambre”. Ensuite, Vous pouvez utiliser cd - rebondir entre les deux répertoires.

Pour faire ceci, écris ce qui suit:

cd ../en avant

CD –

CD –

Le nom du répertoire vers lequel vous vous déplacez apparaît avant de vous y déplacer.

EN RELATION: Comment utiliser pushd et popd sous Linux

Un autre genre de parent

Le shell utilise le répertoire de travail actuel comme répertoire “racine” o base pour les chemins relatifs. Vous pouvez utiliser le CDPATH variable d'environnement pour déterminer un autre emplacement comme répertoire de base pour les chemins relatifs. Si vous passez la plupart de votre temps dans une certaine section de l'arborescence du système de fichiers, cela peut vous faire économiser beaucoup de frappes (et le temps) tous les jours.

Écrivons ce qui suit pour faire work/dev/projects le répertoire de base pour les chemins relatifs:

export CDPATH=/home/dave/work/dev/projects

À présent, chaque fois que vous utilisez le dc commander, l'emplacement dans le CDPATH La variable d'environnement est vérifiée en premier pour les noms de répertoire correspondants. Si l'un d'entre eux correspond à l'objectif que vous avez indiqué dans le cd commander, vous êtes transféré dans ce répertoire.

À présent, quel que soit l'endroit où vous vous trouvez dans le système de fichiers, lorsque vous utilisez le cd commander, le shell vérifie si le répertoire cible est dans le répertoire de base. Si c'est ainsi, sera déplacé vers ce répertoire de destination.

Si votre répertoire de destination commence par une barre oblique (/), ce qui en fait un itinéraire absolu, ne sera pas affecté par la CDPATH Variable environnementale.

Pour prouver cela, nous écrivons ce qui suit:

CDC
cd prologue
cd/usr
cd en avant

Les CDPATH La variable d'environnement est vraiment un chemin, de la même manière que le PATH Variable environnementale. Lorsque vous tapez une commande, le shell recherche les emplacements dans le PATH pour un match. Lorsque vous utilisez CDPATH, le shell recherche les emplacements dans le CDPATH variable d'environnement pour une correspondance. En même temps, aussi bien que PATH, CDPATH peut contenir plusieurs emplacements.

EN RELATION: Comment travailler avec des variables dans Bash

Pour que le shell recherche le répertoire courant avant d'autres emplacements dans le CDPATH variable d'environnement, il suffit d'ajouter un point ( . ) au début de la route comme ça:

export CDPATH=.:/home/dave/work/dev/projects

Pour rendre vos paramètres permanents, vous devez les ajouter à un fichier de configuration, Quoi .bashrc.

Une chose à faire attention: si vous définissez un répertoire de base, cela affectera également les changements de répertoire effectués dans les scripts. Pour éviter cela, vous pouvez utiliser des chemins absolus dans vos scripts ou un test dans votre .bashrc fichier lorsque vous spécifiez votre CDPATH, Comme indiqué ci-dessous:

if test "${PS1+set}"; then CDPATH=.:/home/dave/work/dev/projects; fi

Ceci effectue un test pour voir si la variable de ligne de commande, $PS1 , a été établi. Les CDPATH La variable d'environnement ne sera définie que si le test réussit.

EN RELATION: Comment ajouter un répertoire à votre $ CHEMIN sous Linux

Utiliser shopt avec cd

Avec lui shopt commander, vous pouvez définir certaines options pour le shell. Certains d'entre eux peuvent améliorer votre utilisation de cd. Pour les configurer, Utilisez le -s (permettre) option avec shopt pour lui passer un nom d'option.

Les cdspell L'option vérifie les noms de vos répertoires et corrige quelques fautes de frappe courantes, y compris les caractères transposés ou manquants, ou des noms avec trop de caractères. Si vous trouvez un répertoire qui correspond à l'un des correctifs, le chemin corrigé est imprimé et cd l'action est menée.

Exemple, nous écrivons ce qui suit pour configurer le cdspell et écris mal “bureau” pour voir si le shell le corrige pour nous:

shopt -s cdspell
cd Desktpo

Le shell a rencontré l'erreur, corrigé et changé de répertoire “bureau”.

Autre shopt option que vous pouvez utiliser avec cd il est autocd. Élimine le besoin de taper cd Tout à fait. Tout ce que vous tapez qui n'est pas une commande, script ou autre exécutable (comme pseudo), utilisé comme répertoire de destination. Si vous pouvez transférer vers ce répertoire, il est imprimé dans la fenêtre du terminal et il est changé dans ce répertoire.

Exemple, nous écrivons ce qui suit:

shopt -s autocd
/usr/local/jeux
/etc
~

Regarder! Vous pouvez parcourir tout le système de fichiers sans même utiliser cd!

Les paramètres qui changent avec shopt ils n'impactent que les coques interactives, pas de scripts los.

La collection de disques

Vous n'adopterez probablement pas tous ces. Malgré cela, vous avez probablement trouvé quelque chose d'intéressant ou d'avantage ici. Après tout, Tout ce qui accélère ou simplifie la navigation en ligne de commande est très bien !!

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.