Comment réparer l'erreur de commande introuvable sur Mac dans le Terminal?

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

Résumé: Ce post explique pourquoi vous voyez l'erreur "commande introuvable" sur Mac et 4 façons de résoudre le problème. Nous vous guiderons étape par étape avec des exemples comme "zsh: commande introuvable: brew".

Parfois, vous pouvez rencontrer l'erreur "commande introuvable" sur Mac lorsque vous essayez d'exécuter certaines commandes dans la fenêtre du Terminal comme la commande ls

Depuis qu'Apple a changé l'interpréteur de commandes par défaut de bash à zsh dans macOS Catalina, les utilisateurs exécutant macOS Catalina ou une version ultérieure verront probablement un message comme "zsh: commande introuvable: brew". Mais les utilisateurs exécutant macOS Mojave ou une version antérieure verront probablement une erreur comme "bash: brew: commande introuvable".

Lorsque le Terminal indique "commande introuvable", cela signifie que la commande que vous avez saisie ne se trouve pas dans votre chemin de recherche. Cela peut se produire pour plusieurs raisons, comme nous l'expliquerons ensuite.

Pourquoi l'erreur de 'commande introuvable' apparaît-elle dans le Terminal de Mac?

Vous pouvez recevoir l'erreur de commande introuvable sur Mac lorsque l'une des situations suivantes se produit:

  • La commande a été mal saisie.
  • La commande n'est pas installée sur votre Mac.
  • La commande a été accidentellement supprimée ou le répertoire système a été modifié ou supprimé.
  • Le $PATH qui spécifie les répertoires à rechercher pour une commande est incomplet, incorrectement défini ou effacé.

Peu importe la raison, vous pouvez suivre le guide général ci-dessous pour corriger l'erreur de "commande introuvable" sur Mac.

Comment réparer l'erreur de commande introuvable sur Mac?

Il existe divers cas concernant l'erreur de "commande introuvable" sur Mac. Vous pouvez rencontrer le message "zsh: commande introuvable" sur Mac Monterey ou toute autre version de macOS utilisant zsh. Le problème peut également se produire avec n'importe quelle commande. Voici quelques messages d'erreur couramment rapportés par les utilisateurs:

  • zsh : commande introuvable : $
  • zsh : commande introuvable : ls
  • zsh : commande introuvable : brew
  • zsh : commande introuvable : import
  • bash : brew : commande introuvable
  • -bash : $ : commande introuvable
  • sudo : commande introuvable
  • sudo : nano : commande introuvable

Heureusement, ces erreurs peuvent généralement être résolues en suivant les solutions suivantes. Il est recommandé de les essayer une par une jusqu'à ce que la commande puisse être exécutée avec succès.

  • Réparation 1 : Vérifiez la syntaxe de la commande
  • Réparation 2 : Définissez $PATH comme le chemin macOS par défaut
  • Réparation 3 : Ajoutez votre répertoire à $PATH
  • Réparation 4 : Réinstallez macOS ou restaurez à partir de Time Machine

Vérifier la syntaxe de la commande

Les utilisateurs peu familiers avec les commandes font souvent des erreurs telles que oublier d'inclure un espace là où il est nécessaire ou ajouter des symboles inutiles dans la commande. Par exemple, vous pouvez entrer sudo nano/private/etc/hosts pour éditer les fichiers Host avec Nano alors que la syntaxe correcte a un espace après nano, qui devrait être sudo nano /private/etc/hosts.

Ou vous pouvez copier et coller une ligne comme $ brew install pyqt dans Terminal, ce qui ne renvoie qu'une erreur : "-bash : $ : commande introuvable" sur Mac. C'est parce que le $ est simplement un exemple de l'invite de Terminal dans la documentation qui n'a pas besoin d'apparaître dans la commande.

Donc, la première chose à vérifier lorsque vous rencontrez l'erreur "commande introuvable" dans le Terminal de Mac est la syntaxe de la commande. Il est préférable de copier le texte original dans le Terminal plutôt que de le taper vous-même. De plus, comparer votre commande avec d'autres exemples utilisant la même commande aidera également.

Définir $PATH comme le chemin macOS par défaut

Un chemin fait référence à un emplacement spécifique dans un système de fichiers. De même, la variable système PATH ($PATH) pour les commandes du Terminal spécifie plusieurs répertoires où se trouvent les programmes exécutables. Avec $PATH, votre Mac sait où chercher pour exécuter une commande, vous n'avez donc pas besoin d'entrer le chemin absolu de la commande, mais seulement le nom comme ls.

Cependant, si le chemin où se trouve la commande que vous souhaitez exécuter n'est pas défini, vous obtiendrez l'erreur "commande introuvable" sur Mac, telle que "zsh : commande introuvable" ou "zsh : commande introuvable ls".

Dans ce cas, vous devez d'abord vous assurer que le $PATH où résident les commandes est configuré avec les étapes suivantes :

  1. Ouvrir Terminal.
  2. Exécutez la commande suivante pour définir le chemin standard que macOS utilise dans la ligne de commande : export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
  3. Tapez votre mot de passe et appuyez sur Entrée.

Essayez de réexécuter la commande que vous avez échouée auparavant pour voir si l'erreur "zsh: commande introuvable" se reproduit dans macOS Monterey. Si le problème persiste, passez à la prochaine solution.

 Ajoutez votre répertoire à PATH

Un autre problème qui peut entraîner l'erreur "zsh: commande introuvable" sur un Mac M1 est lorsque la commande que vous avez saisie n'est pas enregistrée dans le PATH par défaut. Vous pouvez vérifier le PATH par défaut en cours en exécutant la commande suivante dans Terminal: echo $PATH

La commande vous donnera probablement le PATH par défaut comme /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin, qui sont les cinq répertoires que votre Mac utilise avec les lignes de commande.

Si la commande que vous utilisez est stockée dans un répertoire exclu des répertoires par défaut, suivez les étapes ci-dessous pour l'ajouter au PATH. Par exemple, si vous rencontrez l'erreur "zsh: commande introuvable: brew" sur un Mac et que vous remarquez que votre Homebrew est stocké à /opt/homebrew/bin, plutôt que dans le répertoire habituel /usr/local/. Suivez ces solutions pour corriger cela:

  1. Ouvrez Terminal.
  2. Exécutez la commande suivante pour ajouter temporairement le nouveau répertoire (par ex. /opt/homebrew/bin) au PATH:export PATH=$PATH:/opt/homebrew/bin
  3. Vérifiez si le nouveau répertoire a été ajouté avec la commande echo:echo $PATH

Vous pouvez tester si la commande que vous souhaitez utiliser fonctionne maintenant. Si vous souhaitez que la modification du PATH persiste, vous devez l'ajouter au fichier .zshrc, .bash_profile ou .bashrc, en fonction de l'interpréteur de commandes que vous utilisez. Suivez ces étapes:

  1. Exécutez cette commande dans Terminal pour accéder à votre répertoire personnel.cd
  2. Utilisez la commande ci-dessous pour lister les fichiers de votre répertoire personnel et vérifiez si vous avez un fichier .zshrc si vous utilisez zsh.ls -la
  3. S'il n'existe pas, créez-en un avec l'éditeur nano à l'aide de cette commande. Sinon, passez à l'étape 4.touch .zshrc
  4. Exécutez cette commande pour éditer .zshrc avec nano.nano .zshrc
  5. Exécutez une autre commande pour ajouter le nouveau répertoire (par ex. /opt/homebrew/bin)  à .zshrc.export PATH=$PATH:/opt/homebrew/bin
  6. Quittez Terminal et rouvrez-le.

Si cette méthode ne suffit pas, continuez à lire la solution suivante pour résoudre l'erreur "zsh: commande introuvable" sur votre Mac M1 ou Mac Intel.

Réinstallez macOS ou restaurez à partir de Time Machine

Si vous avez fouiné dans le système et supprimé accidentellement certains fichiers ou dossiers système, vous avez peut-être supprimé les fichiers essentiels aux commandes Terminal. Si c'est le cas, vous devez restaurer ces fichiers système.

Vous pouvez choisir de restaurer à un état précédent si vous avez sauvegardé votre Mac avec Time Machine. Sinon, vous pouvez réinstaller macOS sans formater le disque. Notez que bien que la réinstallation du système d'exploitation ne devrait pas entraîner de perte de données, il est préférable de faire une copie des fichiers importants avant d'agir.

Lire aussi:

Createinstallmedia : Command Not Found (Sonoma/Earlier) Fixed