Bienvenue, chers utilisateurs de Mac, dans ce guide complet dédié à la découverte des trésors cachés de votre machine : les outils en ligne de commande, ou CLI.
Vous vous êtes sans doute déjà demandé quelles sont les commandes que l’on peut lancer depuis le terminal, ou comment retrouver un outil que vous aviez installé il y a longtemps. Dans ce tutoriel, je vais vous accompagner pas à pas pour que vous puissiez explorer votre environnement de développement.
Nous allons démystifier le concept de la ligne de commande, comprendre où se cachent ces fameux outils, et explorer plusieurs méthodes, de la plus simple à la plus avancée, pour en dresser la liste complète.
Ce guide a été conçu pour être accessible à tous, que vous soyez un débutant curieux ou un développeur cherchant à organiser son espace de travail. Préparez-vous à plonger dans les rouages de votre Mac et à en découvrir toutes les facettes.
- Qu'est-ce qu'un outil CLI ?
- Les emplacements courants des outils CLI sur votre Mac
- Lister le contenu des répertoires du $PATH
- Utiliser la commande compgen pour une liste plus pertinente
- Qu'est-ce que le Shell et à quoi sert-il ?
- Comment savoir quel shell vous utilisez ?
- Vérifier les alias
- Comment lister les outils installés avec Homebrew
- Un script Python pour une solution personnalisée
Qu’est-ce qu’un outil CLI ?
Avant de nous lancer dans la recherche de vos outils, prenons un moment pour comprendre ce qu’ils sont réellement. CLI est l’acronyme de Command-Line Interface, ce qui se traduit en français par « Interface en Ligne de Commande ».
Concrètement, il s’agit d’un programme informatique que vous n’utilisez pas avec la souris, mais en tapant des commandes textuelles dans une application comme le Terminal.
Contrairement aux applications traditionnelles avec une interface graphique (GUI) que vous ouvrez en double-cliquant, les outils CLI sont souvent plus rapides, plus légers et incroyablement puissants pour l’automatisation de tâches.
Pensez par exemple à des commandes comme git pour la gestion de versions de code, brew
pour installer des logiciels, ou même ls
pour lister le contenu d’un dossier. Ils sont les fondations de l’écosystème des développeurs et des administrateurs système.
Comprendre où ils se trouvent et comment les lister est la première étape pour prendre le contrôle total de votre machine.
Pour rappel, consultez notre Guide des principales commandes du terminal.
Les emplacements courants des outils CLI sur votre Mac
Votre Mac est une machine bien organisée, et les outils en ligne de commande ne font pas exception. Ils ne sont pas tous éparpillés au hasard sur votre disque dur. La plupart se trouvent dans des répertoires bien précis, que votre Terminal est capable de « chercher » automatiquement lorsque vous tapez une commande. Ces répertoires sont définis dans une variable d’environnement cruciale nommée $PATH
.
Pour voir cette liste de répertoires, ouvrez votre Terminal et tapez la commande suivante :
echo $PATH
Le résultat que vous obtiendrez sera une longue chaîne de caractères, avec les chemins de répertoires séparés par des deux-points (:
). Par exemple, vous pourriez voir quelque chose comme ceci :
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Chacun de ces chemins est un endroit où votre système d’exploitation va fouiller lorsque vous tapez une commande. Voici les répertoires les plus importants que vous êtes susceptible de trouver et leur utilité :
/usr/local/bin
: C’est le répertoire de prédilection pour les outils que vous installez vous-même, notamment ceux qui proviennent de gestionnaires de paquets comme Homebrew. C’est le premier endroit à vérifier si vous cherchez un outil que vous avez installé manuellement./usr/bin
et/bin
: Ces répertoires contiennent la plupart des outils et des commandes qui sont pré-installés avec macOS. Ce sont les commandes essentielles du système, commels
,cd
,grep
, etc./usr/sbin
et/sbin
: Ces répertoires contiennent également des outils système, mais ils sont généralement réservés aux commandes d’administration qui nécessitent des privilèges de super-utilisateur./opt/homebrew/bin
: Sur les Mac équipés de processeurs Apple Silicon (comme la puce M1, M2, etc.), Homebrew a un emplacement par défaut légèrement différent. Si vous avez un Mac récent, c’est un répertoire que vous devriez vérifier.
Lister le contenu des répertoires du $PATH
Maintenant que vous savez où se trouvent les outils, la méthode la plus simple pour en avoir un aperçu est de lister le contenu de ces répertoires. Vous pouvez utiliser la commande ls
(pour « list ») pour cela. En combinant ls
avec un chemin de répertoire, vous demandez au Terminal de vous afficher le contenu de ce dossier.
Pour lister les outils dans /usr/local/bin
, tapez :
ls /usr/local/bin
Si vous souhaitez obtenir une liste plus détaillée, par exemple avec la taille et les droits d’accès des fichiers, vous pouvez ajouter des options à la commande ls
:
ls -l /usr/local/bin
Cette méthode a l’avantage d’être simple et directe. Cependant, elle a une limite : elle listera tous les fichiers présents dans le répertoire, qu’il s’agisse de commandes exécutables, de fichiers de configuration ou de liens symboliques. Vous obtiendrez donc une liste exhaustive mais pas toujours précise des seuls outils utilisables directement.
Utiliser la commande compgen
pour une liste plus pertinente
Si vous cherchez une méthode plus « intelligente » pour lister les commandes disponibles, la commande compgen
est un excellent choix. Elle est nativement intégrée dans de nombreux shells (comme Bash ou Zsh, qui est le shell par défaut sur les Mac récents) et permet de générer une liste de commandes, d’alias ou de fonctions que le shell peut trouver.
Pour obtenir une liste de toutes les commandes que votre shell est capable d’exécuter, utilisez compgen
avec l’option -c
:
compgen -c
L’avantage de compgen -c
est qu’il ne liste pas seulement les fichiers dans les répertoires de votre $PATH
, mais toutes les commandes que votre shell a identifiées, y compris les alias et les fonctions du shell. Le résultat est une liste longue mais très précise des outils que vous pouvez réellement utiliser.
Qu’est-ce que le Shell et à quoi sert-il ?
Le shell est un interpréteur de commandes qui sert d’interface entre l’utilisateur et le système d’exploitation. C’est l’outil principal pour interagir avec l’ordinateur en tapant des commandes textuelles, au lieu d’utiliser une interface graphique (GUI) avec une souris et des icônes.
Son rôle est d’interpréter les commandes que vous saisissez (comme ls
, cd
, mkdir
) et de les transmettre au noyau du système d’exploitation pour qu’il les exécute. Il gère également l’exécution de scripts shell, ce qui permet d’automatiser des tâches complexes.

Des formations informatique pour tous !
Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…
Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.
Découvrez mes formations Qui suis-je ?En résumé, le shell est votre porte d’entrée pour le contrôle et la gestion du système à un niveau plus basique et puissant.
Comment savoir quel shell vous utilisez ?
Pour connaître le shell que vous utilisez, il suffit de taper la commande echo $SHELL
dans votre terminal et d’appuyer sur Entrée. Cette commande affichera le chemin d’accès complet de votre shell par défaut.
Par exemple, si vous utilisez le shell Bash, la sortie sera probablement /bin/bash
.
Si vous utilisez Zsh, elle sera /bin/zsh
.
Une autre méthode consiste à utiliser la commande ps -p $$
qui vous montrera le processus de votre shell actuel. Comprendre quel shell vous utilisez est utile car chaque shell possède ses propres fonctionnalités, scripts, et syntaxes spécifiques.
Vérifier les alias
Les alias sont une autre source d’outils CLI. Il s’agit de raccourcis que vous pouvez créer pour des commandes plus longues ou plus complexes. Par exemple, si vous tapez souvent ls -la
, vous pourriez créer un alias pour qu’en tapant simplement ll
, votre Mac exécute la commande plus longue. Les alias ne sont pas des programmes installés, mais des configurations de votre shell.
Pour voir la liste de tous les alias que vous avez définis, il suffit de taper la commande alias
sans argument :
alias
Votre terminal vous affichera une liste des alias existants, comme par exemple :
alias ll='ls -alF'
alias ...
Ces alias sont généralement définis dans un fichier de configuration de votre shell, comme .zshrc
si vous utilisez Zsh, ou .bash_profile
si vous utilisez Bash.
Comment lister les outils installés avec Homebrew
Si vous utilisez Homebrew, le gestionnaire de paquets de référence pour macOS, vous disposez d’une méthode très simple et efficace pour lister les outils que vous avez installés.
Homebrew s’occupe de télécharger et de compiler les logiciels pour vous, et il garde la trace de tout ce qu’il a mis en place.
Pour obtenir une liste des paquets (appelés « formules » dans le jargon Homebrew) que vous avez installés, ouvrez votre Terminal et tapez la commande suivante :
brew list --formula
Si vous avez également installé des applications graphiques via Homebrew Cask, vous pouvez les lister séparément avec cette commande :
brew list --cask
Cette méthode est particulièrement pratique car elle vous donne une vue d’ensemble propre et organisée de tout ce que Homebrew a géré pour vous, sans avoir à fouiller dans les répertoires.
Un script Python pour une solution personnalisée
Pour aller plus loin et automatiser la tâche de recherche, vous pouvez créer un petit script en langage Python. Ce script va parcourir les répertoires de votre $PATH
et identifier les fichiers qui sont des exécutables, en vous offrant une liste personnalisée et ordonnée.
Le script Python
Voici le code du script. Créez un nouveau fichier nommé lister_outils_cli.py
et copiez-y le code suivant :
#!/usr/bin/env python3
import os
def lister_outils_cli():
"""
Cette fonction parcourt la variable d'environnement PATH,
liste les fichiers exécutables dans chaque répertoire,
et les affiche de manière claire.
"""
# 1. Obtenir la variable d'environnement PATH
# La fonction os.environ.get() est utilisée pour récupérer la valeur de la variable d'environnement 'PATH'.
# Si la variable n'existe pas, elle retourne une chaîne de caractères vide.
path_variable = os.environ.get('PATH', '')
# 2. Séparer les répertoires
# La variable PATH est une chaîne de caractères où chaque répertoire est séparé par un deux-points (:).
# La méthode .split(':') découpe cette chaîne en une liste de répertoires.
path_reps = path_variable.split(':')
# 3. Préparer un ensemble pour stocker les outils uniques
# L'utilisation d'un 'set' (ensemble) garantit que chaque outil ne sera listé qu'une seule fois,
# même s'il existe des liens symboliques ou des copies dans différents répertoires.
outils_uniques = set()
# 4. Parcourir chaque répertoire du PATH
print("Analyse en cours, veuillez patienter...")
for rep in path_reps:
# La fonction os.path.isdir() vérifie si le chemin est un répertoire valide et existant.
if os.path.isdir(rep):
# La fonction os.listdir() liste tous les fichiers et dossiers à l'intérieur du répertoire.
for nom_fichier in os.listdir(rep):
# os.path.join() construit un chemin complet en joignant le chemin du répertoire et le nom du fichier.
chemin_complet = os.path.join(rep, nom_fichier)
# 5. Vérifier si c'est un fichier exécutable
# os.path.isfile() vérifie que le chemin pointe vers un fichier (pas un répertoire).
# os.access() vérifie si le fichier est exécutable par l'utilisateur (os.X_OK).
if os.path.isfile(chemin_complet) and os.access(chemin_complet, os.X_OK):
outils_uniques.add(nom_fichier)
# 6. Afficher les résultats
# Convertir l'ensemble en une liste et la trier par ordre alphabétique pour une meilleure lisibilité.
outils_tries = sorted(list(outils_uniques))
print("\n--- Liste des outils CLI trouvés (basé sur le $PATH) ---\n")
for outil in outils_tries:
print(f"- {outil}")
print(f"\n--- {len(outils_tries)} outils CLI au total. ---\n")
# Lancer la fonction
if __name__ == "__main__":
lister_outils_cli()
Explication détaillée du script
- Importation du module
os
: Le moduleos
(pour « Operating System ») est un module standard de Python qui fournit des fonctions pour interagir avec le système d’exploitation. Nous en avons besoin pour accéder aux variables d’environnement et pour manipuler les chemins de fichiers. - Fonction
lister_outils_cli()
: C’est le cœur de notre script. Elle contient toute la logique pour trouver et lister les outils. - Récupération du
$PATH
:os.environ.get('PATH', '')
récupère la valeur de la variable d’environnementPATH
. Si elle n’existe pas (ce qui est peu probable sur un Mac), elle renvoie une chaîne vide pour éviter les erreurs. - Découpage du
$PATH
: La lignepath_reps = path_variable.split(':')
est essentielle. Elle prend la longue chaîne de répertoires séparés par des deux-points et la transforme en une liste de chaînes de caractères, où chaque élément est un répertoire. - Utilisation d’un
set
: Leset
(ensemble)outils_uniques
est une astuce pour ne pas avoir de doublons dans notre liste finale. Lesset
ne peuvent pas contenir deux fois le même élément. C’est très utile car un même outil peut être accessible par plusieurs chemins, par exemple un lien symbolique dans un répertoire et le fichier original dans un autre. - Boucle sur les répertoires : Le script parcourt un par un les répertoires de la liste
path_reps
. - Vérification de l’existence :
os.path.isdir(rep)
vérifie si le cheminrep
est bien un répertoire qui existe. C’est une bonne pratique pour éviter que le script ne plante sur des chemins invalides. - Boucle sur les fichiers :
os.listdir(rep)
liste tous les fichiers et sous-dossiers dans le répertoire actuel. - Vérification de l’exécutabilité : C’est la partie la plus importante. La condition
if os.path.isfile(chemin_complet) and os.access(chemin_complet, os.X_OK):
vérifie deux choses :os.path.isfile(chemin_complet)
: S’assure que le chemin pointe bien vers un fichier et non vers un répertoire.os.access(chemin_complet, os.X_OK)
: Vérifie si le fichier est un fichier exécutable, c’est-à-dire que vous avez la permission de l’exécuter.
- Ajout des outils : Si les deux conditions sont remplies, le nom du fichier est ajouté au
set
outils_uniques
. - Affichage final : Pour une présentation soignée, le script convertit le
set
en une liste, la trie par ordre alphabétique avecsorted()
, puis affiche chaque nom d’outil.
Comment lancer ce script depuis le Terminal
Pour lancer votre script Python, suivez ces étapes :
- Ouvrez le Terminal : Vous pouvez le trouver dans votre dossier
Applications > Utilitaires
. - Naviguez jusqu’au dossier du script : Utilisez la commande
cd
pour vous déplacer vers le dossier où vous avez enregistré le fichierlister_outils_cli.py
. Par exemple, si vous l’avez sauvegardé sur votre bureau, tapez :cd ~/Desktop
- Lancez le script : Pour exécuter le script, vous devez dire au Terminal de le lancer avec l’interpréteur Python 3. La commande est :
python3 lister_outils_cli.py
Le script va alors s’exécuter, parcourir tous les répertoires de votre$PATH
et vous afficher la liste complète des outils qu’il a trouvés.
Si vous n’avez pas python3
d’installé, vous pouvez simplement taper python
à la place. L’important est d’utiliser la bonne version qui est sur votre machine.
Nous avons parcouru ensemble un chemin de la théorie de la ligne de commande à la mise en pratique. Vous comprenez maintenant ce qu’est un outil CLI, où il se cache sur votre Mac, et vous disposez de plusieurs méthodes pour en dresser la liste. Que vous préfériez une approche simple avec les commandes ls
et alias
, une approche ciblée avec brew
, ou une solution personnalisée et automatisée avec un script Python, vous avez toutes les cartes en main pour explorer et maîtriser votre environnement de développement.
Cette connaissance vous donnera une vision claire des capacités de votre machine et vous aidera à mieux organiser vos outils de travail. N’hésitez pas à modifier le script Python pour l’adapter à vos besoins, ou à explorer les autres options offertes par les commandes compgen
et brew
. L’exploration est la clé pour devenir un utilisateur de Mac plus efficace.