Comment réparer les erreurs "Command Not Found" dans la ligne de commande Mac

Les utilisateurs Mac avancés qui utilisent la ligne de commande peuvent occasionnellement rencontrer un message d'erreur "command not found" lorsqu'ils tentent d'exécuter quelque chose dans la ligne de commande. L'erreur "command not found" dans le Terminal peut faire surface pour plusieurs raisons dans la ligne de commande de MacOS et Mac OS X, comme nous le verrons ici, et bien sûr nous proposerons des solutions à ces problèmes.


Les quatre raisons les plus courantes pour lesquelles vous pouvez voir le message "command not found" dans la ligne de commande Mac sont les suivantes:

  • la syntaxe de commande a été entrée incorrectement
  • la commande que vous essayez d'exécuter n'est pas installée
  • la commande a été supprimée ou, pire, le répertoire système a été supprimé ou modifié
  • les utilisateurs $ PATH est incomplet, ou $ PATH a été défini, réinitialisé ou effacé par erreur - c'est la raison la plus courante de voir un message 'command not found'

Heureusement, vous pouvez résoudre tous ces problèmes et faire fonctionner le commun comme prévu. Si vous avez simplement entré la syntaxe erronée, la saisir correctement résout cela, facile! Au-delà de cela, nous allons commencer avec la raison la plus courante, à savoir que les utilisateurs $ PATH n'est pas correctement défini, ou a été réinitialisé d'une manière ou d'une autre.

Correction des messages du terminal "Command Not Found" dans Mac OS avec le paramètre $ PATH

La raison la plus probable pour laquelle les utilisateurs Mac peuvent voir de manière inattendue le message commande introuvable dans la ligne de commande est que quelque chose a mal tourné avec les utilisateurs $ PATH, ou le chemin où la commande est située n'est pas défini. Vous pouvez vérifier $ PATH avec "echo $ PATH" si vous le souhaitez, sinon vous pouvez simplement exécuter les commandes suivantes pour définir le chemin par défaut standard que Mac OS utilise dans la ligne de commande:

export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

Hit retour et exécutez votre commande à nouveau, cela devrait fonctionner correctement.

En passant, même si nous nous concentrons ici sur Mac OS, cette même idée s'applique à d'autres variétés Unix et Linux.

Notez que si la commande que vous essayez d'utiliser se trouve dans un répertoire non standard ou dans un autre emplacement (/ usr / local / sbin / etc), vous pouvez toujours ajouter ce nouveau $ PATH à la ligne de commande pour spécifier où chercher si nécessaire.

Avant, où le message "command not found" s'affiche en exécutant des commandes simples, les lignes ls et cd:

Après, avec ces commandes fonctionnant correctement comme prévu:

Comment cela peut-il arriver? Parfois, il peut exécuter une commande d'exportation $ PATH incomplète ou incorrecte, un échec d'ajustement des variables d'environnement, entre autres raisons.

Vous devrez peut-être actualiser le shell de ligne de commande pour que la modification prenne effet. Si vous relancez le terminal et recevez à nouveau l'erreur "commande introuvable", ajoutez les commandes $ PATH d'exportation aux utilisateurs .bash_profile, .profile ou au profil de shell approprié si vous utilisez un autre shell dans l'application Terminal.

"Commande non trouvée" car la commande n'est pas installée? Utiliser HomeBrew

Si la commande n'est pas installée sur le Mac, pour des exemples courants tels que wget, htop ou les nombreuses autres commandes Unix disponibles en tant que paquets Homebrew qui ne sont pas préinstallés sous Mac OS, la solution la plus simple est d'installer et d'utiliser Homebrew. sur Mac pour accéder à ces utilitaires de ligne de commande. Homebrew est un excellent outil de toute façon, donc si vous allez passer du temps dans le Terminal, vous le voudrez probablement.

"Commande introuvable" car un répertoire système est manquant? Restaurez les fichiers système manquants

De temps en temps, les utilisateurs Mac peuvent se trouver dans une situation où ils ont accidentellement ou accidentellement supprimé des fichiers système de Mac OS. Habituellement, cela se produit lorsque quelqu'un expérimente avec les commandes rm / srm et un caractère générique, ou peut-être qu'ils deviennent trop zélés avec la poubelle lorsqu'ils sont connectés en tant que root. Dans tous les cas, vous pouvez lire ici comment restaurer les fichiers système supprimés ou manquants sur Mac OS et Mac OS X - cela implique généralement de restaurer à partir d'une sauvegarde ou de réinstaller le logiciel système lui-même.

Connaissez-vous une autre raison pour laquelle vous pouvez voir le message d'erreur "command not found" dans Mac OS Terminal? Peut-être que vous avez une meilleure solution que ce qui est proposé ci-dessus? Partagez avec nous dans les commentaires ci-dessous!