Comment corriger les erreurs "Command Not Found" dans la ligne de commande Mac
Les utilisateurs avancés de Mac qui utilisent la ligne de commande peuvent occasionnellement rencontrer un message d'erreur "commande non trouvée" lorsqu'ils tentent d'exécuter quelque chose dans la ligne de commande. L'erreur "command not found" dans le Terminal peut apparaître 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.
Pourquoi vous voyez les messages d'erreur "commande non trouvée" à la ligne de commande
Les quatre raisons les plus courantes pour lesquelles vous pouvez voir le message "commande non trouvée" dans la ligne de commande Mac sont les suivantes
- la syntaxe de la commande a été saisie de manière incorrecte
- la commande que vous essayez d'exécuter n'est pas installée
- la commande a été supprimée ou, pire, le répertoire du système a été supprimé ou modifié
- le chemin de l'utilisateur $PATH est incomplet, ou $PATH a été défini, réinitialisé ou effacé par erreur - c'est la raison la plus fréquente pour laquelle le message "commande non trouvée" apparaît
Heureusement, vous pouvez résoudre tous ces problèmes et faire fonctionner à nouveau le commun comme prévu. Si vous avez simplement mal saisi la syntaxe, la saisir correctement résout cela, facile ! Au-delà de cela, nous commencerons par la raison la plus courante, qui est que le chemin d'accès de l'utilisateur ($PATH) n'est pas correctement défini, ou a été réinitialisé d'une manière ou d'une autre.
Correction des messages de terminal "Commande non trouvée" dans Mac OS avec le paramètre $PATH
La raison la plus probable pour laquelle les utilisateurs de Mac peuvent inopinément voir le message "commande introuvable" dans la ligne de commande est que quelque chose a mal tourné avec les utilisateurs $PATH, ou que le chemin où se trouve la commande n'est pas défini. Vous pouvez vérifier le $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"
Appuyez sur "Retour" et exécutez à nouveau votre commande, cela devrait bien fonctionner.
Au fait, même si nous nous concentrons ici sur Mac OS, cette même idée s'applique également à d'autres variétés d'unix et de 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 préciser où chercher si nécessaire.
Avant, où le message "commande non trouvée" apparaît en exécutant des commandes simples ligne ls et cd :
Après, avec ces commandes fonctionnant avec succès comme prévu :
Comment cela se fait-il ? Parfois, il peut s'agir de l'exécution d'une commande $PATH d'exportation incomplète ou incorrecte, d'un échec dans l'ajustement des variables d'environnement, entre autres raisons.
Vous devrez peut-être rafraîchir l'interpréteur de commandes pour que le changement prenne effet. Si vous relancez le terminal et que vous obtenez à nouveau l'erreur "command not found", ajoutez les commandes d'exportation $PATH aux utilisateurs .bash_profile, .profile, ou au profil du shell correspondant si vous utilisez un autre shell dans l'application Terminal.
"Commande non trouvée" parce que la commande n'est pas installée ? Utilisez HomeBrew
Si la commande n'est tout simplement pas installée sur le Mac, par exemple pour des exemples courants comme wget, htop, ou les nombreuses autres commandes unix utiles disponibles sous forme de paquets Homebrew qui ne sont pas autrement préinstallés dans Mac OS, alors la solution la plus simple est d'installer et d'utiliser Homebrew sur le Mac pour accéder à ces utilitaires en ligne de commande. Homebrew est de toute façon un excellent outil, donc si vous allez passer du temps dans le Terminal, vous le voudrez probablement.
"Commande non trouvée" parce qu'un répertoire du système est manquant ? Restaurer les fichiers système manquants
De temps en temps, les utilisateurs de Mac peuvent se trouver dans une situation où ils ont accidentellement ou par inadvertance supprimé des fichiers système de Mac OS. Cela se produit généralement lorsque quelqu'un expérimente les commandes rm/srm et un joker, ou peut-être est-il devenu trop zélé avec la corbeille lorsqu'il s'est connecté en tant que root. Dans tous les cas, vous pouvez lire ici comment restaurer des 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 pourriez voir le message d'erreur "commande non trouvée" dans Mac OS Terminal ? Peut-être avez-vous une meilleure solution que celle proposée ci-dessus ? Partagez avec nous les commentaires ci-dessous !