Accueil

[Résolu!] Bash : cd : trop d'arguments/Zsh : cd : chaîne non présente dans pwd :

Updated on mardi 3 décembre 2024

Written by

PierreDubois

Approved by

Jessica Shee

Français English Deutsch やまと Español Português

Résumé : L'erreur cd : trop d'arguments apparaît lorsque vous exécutez la commande cd dans l'interpréteur de commandes pour entrer le répertoire relatif sur vos appareils. Cet article de iBoysoft vous guide pour résoudre ce problème avec des solutions simples mais efficaces.

Vous devez être perplexe face au code d'erreur "bash : cd : trop d'arguments" ou "zsh : cd : trop d'arguments" généré dans l'interpréteur de commandes lorsque vous saisissez cd pour entrer dans un répertoire.

N'ayez crainte, cet article va expliquer pourquoi cd : trop d'arguments se produit et comment résoudre zsh/bash cd : trop d'arguments avec 5 corrections pratiques.

Pourquoi l'erreur Zsh/Bash : cd : trop d'arguments se produit-elle ?

Normalement, l'interpréteur de commandes devrait ouvrir directement le répertoire lorsque vous entrez la ligne de commande cd suivie du chemin du fichier. Il accepte un nom de répertoire comme argument et remplace le répertoire de travail de l'environnement de l'interpréteur de commandes actuel par le répertoire donné.

Si aucun argument n'est donné, la commande cd se comporte comme si le répertoire nommé dans la variable d'environnement HOME était spécifié comme argument. Mais lorsque vous saisissez un répertoire dont le nom contient des espaces ou des caractères spéciaux dans l'interpréteur de commandes Unix, il les identifie comme plus d'un argument. C'est pourquoi il affiche le code d'erreur cd : trop d'arguments dans votre interpréteur de commandes bash.

 Remarque : Si vous utilisez l'interpréteur de commandes zsh, vous pourriez rencontrer l'erreur "cd : chaîne non présente dans pwd:" lorsque vous essayez de cd dans un chemin contenant des espaces.

Certaines personnes se demandent si l'interpréteur de commandes Unix peut accéder à plusieurs répertoires en même temps, la réponse est absolument non. Si vous voulez entrer dans plusieurs répertoires, vous devez exécuter la commande cd un par un.

Si ce post dissipe vos doutes sur la raison pour laquelle trop d'arguments se produisent, veuillez cliquer sur le bouton de partage ci-dessous pour aider plus de personnes!

 

Comment réparer bash: cd: trop d'arguments et zsh: cd: chaîne inexistante en pwd:?

Comme mentionné ci-dessus, le Shell Unix reconnaît qu'il y a plus d'un argument dans votre répertoire avec des caractères spéciaux et des espaces, il échoue donc à passer au répertoire. Face à un tel cas, il est recommandé de continuer à lire cet article qui vous présentera quatre solutions faciles pour que la commande cd fonctionne correctement.

Solution 1: Entourez le nom du répertoire de guillemets doubles

Une solution simple pour que la commande cd passe avec succès au répertoire spécialisé est d'entourer le nom du répertoire de guillemets doubles.

Étape 1: Lancez le Terminal sur votre ordinateur.

Étape 2: Tapez cd puis tapez le symbole des guillemets doubles.

Étape 3: Entrez le chemin du fichier contenant des espaces ou des caractères spéciaux entre les guillemets doubles.

cd "mon nouveau dossier"

Étape 4: Appuyez sur la touche Entrée/Retour pour exécuter la ligne de commande cd et vous verrez que le répertoire change pour celui que vous avez saisi, où vous pourrez effectuer d'autres actions dans le nouveau répertoire.

De plus, vous pouvez entourer un chemin entier vers le répertoire ou uniquement les composants de chemin contenant des espaces ou des caractères spéciaux entre guillemets doubles.

Solution 2: Utilisez un anti-slash pour éviter les espaces

S'il y a des espaces dans le répertoire, la ligne de commande cd dans le Shell Unix va les diviser en deux arguments ou plus. Par conséquent, un anti-slash intervient ici pour échapper aux espaces, ce qui fait que le shell de commande traite les espaces comme un caractère d'espace littéral mais pas comme un séparateur entre les arguments.

Étape 1: Lancez le Terminal sur votre machine.

Étape 2: Tapez cd et suivez le chemin du répertoire vers lequel vous souhaitez passer.

Étape 3: Ajoutez des anti-slashes aux espaces du nom de répertoire. Veuillez noter qu'un slash inversé fonctionne comme un séparateur entre les composants de chemin et l'anti-slash fonctionne comme un outil d'échappement d'espace.

cd bureau/mon\ nouveau\ dossier

Étape 4: Appuyez sur la touche Retour/Entrée pour que le cd vous amène dans un nouveau répertoire.

Solution 3: Utilisez la touche Tab pour l'auto-complétion

Dans les programmes en ligne de commande de Windows, Linux, et macOS, vous pouvez compléter automatiquement les commandes données avec la touche Tab. Par exemple, dans l'invite de commande Unix, cela pourrait être une bonne façon de passer à un répertoire différent plus rapidement.

Étape 1: Ouvrez le shell de commande sur votre appareil.

Étape 2: Commencez à taper le chemin vers lequel vous voulez vous rendre.

Étape 3: Appuyez sur la touche Tab sur votre clavier pour utiliser facilement la fonction d'auto-complétion.

Si vous avez plusieurs dossiers avec des noms similaires, vous devez taper les premiers caractères du nom pour identifier celui dans lequel vous voulez vous déplacer. Si l'auto-complétion ne fonctionne pas, cela indique que le chemin spécifié n'existe pas.

Solution 4 : Ouvrez votre terminal dans le répertoire de destination

Comme vous souhaitez ouvrir le répertoire dans l'invite de commande pour vos activités ultérieures, ne restez pas bloqué à entrer cd, s'il vous plaît. Ouvrir un terminal dans le répertoire de destination a le même effet.

Si vous utilisez Linux, veuillez lire les instructions pas à pas ci-dessous :

Étape 1 : Ouvrez le répertoire dans l'explorateur.

Étape 2 : Cliquez avec le bouton droit et sélectionnez Ouvrir dans le Terminal puis vous pouvez revenir à l'invite de commande pour continuer.

Si vous utilisez un appareil macOS, vous pouvez suivre ces étapes détaillées ci-dessous :

Étape 1 : Ouvrez une fenêtre de Finder et naviguez jusqu'au dossier. Si vous ne voyez pas la barre de chemin en bas de la fenêtre Finder, choisissez Affichage -> Afficher la barre de chemin.

Étape 2 : Cliquez avec le bouton droit sur le répertoire du dossier que vous voulez ouvrir et choisissez Nouveau Terminal au Dossier.

Vous verrez alors le Terminal passer au répertoire avec lequel vous travaillez.

Solution 5 : Faites glisser le dossier dans la fenêtre du terminal

Si toutes les solutions mentionnées ci-dessus ne vous conviennent pas, la solution finale qui vaut la peine d'être essayée est simplement de faire glisser le répertoire du dossier vers la fenêtre de votre terminal. Lancez simplement le terminal, faites un clic gauche et glissez le répertoire du dossier vers la fenêtre, puis vous serez dans le nouveau chemin du répertoire.

Si vous avez résolu avec succès l'erreur bash: cd: trop d'arguments/zsh: cd: chaîne non présente dans pwd:, pourquoi ne pas partager cet article pour aider davantage de personnes ?

 

Conseil bonus : comment tirer le meilleur parti de cd ?

Si vous êtes débutant en invite de commande ou si vous avez une grande passion et curiosité pour les terminaux, les différentes lignes de commande cd discutées dans cet article doivent être utiles. Jetez un coup d'œil rapide ici :

  • cd:cd par lui-même ou cd ~ mettra toujours l'utilisateur dans son répertoire personnel.
  • cd . : cd . laissera l'utilisateur dans le même répertoire où il se trouve actuellement (c'est-à-dire que le répertoire actuel ne changera pas). Cela peut être utile si le code interne de l'utilisateur ne peut pas gérer le fait que le répertoire dans lequel il se trouve soit recréé. En exécutant cd . leur shell se retrouvera dans le répertoire recréé.
  • cd ~utilisateur: cd ~ utilisateur placera l'utilisateur dans le répertoire personnel de l'utilisateur.
  • cd dir (sans /): cd dir placera l'utilisateur dans un sous-répertoire; par exemple, s'ils sont dans /usr, taper cd bin les placera dans /usr/bin, alors que cd /bin les placera dans /bin.
  • cd ..: cd.. déplacera l'utilisateur d'un répertoire vers le haut. Ainsi, s'ils sont dans /usr/bin/tmp, cd .. les déplacera dans /usr/bin, alors que cd ../.. les déplacera dans /usr (c'est-à-dire vers le haut de deux niveaux). L'utilisateur peut utiliser cette méthode indirecte pour accéder également aux sous-répertoires. Donc, à partir de /usr/bin/tmp, ils peuvent utiliser cd ../../local pour aller dans /usr/local.
  • cd -: cd - basculera l'utilisateur vers le répertoire précédent. Par exemple, s'ils sont dans /usr/bin/tmp, et vont dans /etc, ils peuvent taper cd - pour revenir à /usr/bin/tmp. L'utilisateur peut utiliser cela pour basculer entre deux répertoires sans utiliser pushd et popd.

Récapitulatif

L'erreur cd: trop d'arguments n'est pas aussi redoutable que vous l'imaginez puisque cet article propose 5 solutions simples pour la faire disparaître. Vous pouvez en essayer une ou plusieurs comme vous le souhaitez pour entrer dans le répertoire relatif en utilisant cd. De plus, vous trouverez un contexte merveilleux vous enseignant comment utiliser la ligne de commande cd de manière plus efficace couvert dans cet article.