Les commandes macOS essentielles — le guide de référence
Les commandes Terminal de macOS les plus utiles, avec les spécificités Apple, Homebrew, et les commandes réseau et système.
Le Terminal macOS
macOS est basé sur Unix — donc la quasi-totalité des commandes Linux fonctionnent directement sur votre Mac. Le terminal par défaut depuis macOS Catalina est Zsh (accessible via Applications > Utilitaires > Terminal ou Cmd + Espace puis "Terminal").
Ce guide couvre les commandes communes avec Linux ET les commandes propres à macOS.
Commandes communes avec Linux
Les commandes suivantes sont identiques sur Linux et macOS :
| Commande | Description |
|---|---|
pwd, ls -la, cd, mkdir, rm, cp, mv |
Navigation et fichiers |
cat, head, tail -f, less, wc |
Lecture de fichiers |
grep, find, which |
Recherche |
chmod, chown, sudo |
Permissions |
ssh, scp, curl, ping |
Réseau |
ps aux, kill, top |
Processus |
tar, zip, unzip, gzip |
Archives |
echo, export, alias, source |
Variables et shell |
Pour les détails sur ces commandes, consultez le guide Les commandes Linux essentielles.
Commandes spécifiques à macOS
| Commande | Description | Exemple |
|---|---|---|
open . |
Ouvre le dossier courant dans Finder | open . |
open fichier.pdf |
Ouvre un fichier avec l'app par défaut | open rapport.pdf |
open -a |
Ouvre avec une application précise | open -a "Google Chrome" index.html |
open https://... |
Ouvre une URL dans le navigateur par défaut | open https://afrodemique.com |
pbcopy |
Copie dans le presse-papier | cat fichier.txt \| pbcopy |
pbpaste |
Colle depuis le presse-papier | pbpaste > nouveau.txt |
say |
Lit un texte à voix haute | say "Bienvenue sur AfroDémique" |
sw_vers |
Affiche la version de macOS | sw_vers |
system_profiler |
Infos matérielles détaillées | system_profiler SPHardwareDataType |
caffeinate |
Empêche la mise en veille | caffeinate -t 3600 |
caffeinate -i |
Empêche la veille le temps d'une commande | caffeinate -i npm install |
screencapture |
Capture d'écran depuis le terminal | screencapture -i capture.png |
mdfind |
Recherche avec Spotlight | mdfind "rapport 2024" |
mdfind -name |
Cherche un fichier par nom | mdfind -name "notes.txt" |
mdls |
Métadonnées d'un fichier | mdls photo.jpg |
xcode-select --install |
Installe les outils de développement (Git, clang…) | xcode-select --install |
defaults write |
Modifie les préférences système | defaults write com.apple.finder ... |
killall Finder |
Redémarre le Finder | killall Finder |
killall Dock |
Redémarre le Dock | killall Dock |
Homebrew — le gestionnaire de paquets macOS
Homebrew est l'équivalent de apt (Ubuntu) sur Mac. C'est l'outil indispensable pour installer des logiciels depuis le terminal.
Installation de Homebrew :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
| Commande | Description |
|---|---|
brew install git |
Installe un paquet (ex: git, node, python) |
brew uninstall git |
Désinstalle un paquet |
brew update |
Met à jour Homebrew lui-même |
brew upgrade |
Met à jour tous les paquets installés |
brew upgrade git |
Met à jour un paquet précis |
brew list |
Liste tous les paquets installés |
brew search python |
Cherche un paquet disponible |
brew info node |
Affiche les infos d'un paquet |
brew doctor |
Diagnostique les problèmes d'installation |
brew cleanup |
Supprime les anciennes versions |
brew install --cask firefox |
Installe une application graphique (.app) |
brew list --cask |
Liste les applications cask installées |
Paquets recommandés pour les développeurs :
brew install git node python wget htop tree
brew install --cask visual-studio-code docker
Réseau sur macOS
| Commande | Description | Exemple |
|---|---|---|
ping -c 4 google.com |
Envoie 4 paquets et s'arrête | ping -c 4 google.com |
curl https://url |
Requête HTTP | curl https://api.example.com |
ipconfig getifaddr en0 |
Adresse IP de l'interface Wi-Fi | ipconfig getifaddr en0 |
ipconfig getifaddr en1 |
Adresse IP de l'interface Ethernet | ipconfig getifaddr en1 |
networksetup -listallnetworkservices |
Liste toutes les interfaces réseau | networksetup -listallnetworkservices |
networksetup -getinfo Wi-Fi |
Infos de connexion Wi-Fi | networksetup -getinfo Wi-Fi |
scutil --dns |
Configuration DNS | scutil --dns |
scutil --nwi |
Infos réseau actuelles | scutil --nwi |
lsof -i :3000 |
Quel processus utilise le port 3000 | lsof -i :3000 |
lsof -i -n -P |
Toutes les connexions réseau actives | lsof -i -n -P \| grep LISTEN |
nettop |
Moniteur réseau en temps réel | nettop |
nslookup |
Résolution DNS | nslookup google.com |
dig |
Infos DNS détaillées | dig google.com A |
traceroute |
Trace le chemin réseau | traceroute google.com |
Processus et mémoire
| Commande | Description | Exemple |
|---|---|---|
top |
Moniteur de ressources | top |
top -o cpu |
Triés par CPU | top -o cpu |
ps aux |
Tous les processus | ps aux |
kill -9 PID |
Arrête un processus | kill -9 1234 |
killall Chrome |
Arrête toutes les instances de Chrome | killall "Google Chrome" |
vm_stat |
Statistiques de mémoire virtuelle | vm_stat |
sysctl hw.memsize |
Taille totale de la RAM | sysctl hw.memsize |
sysctl -n hw.ncpu |
Nombre de cœurs CPU | sysctl -n hw.ncpu |
diskutil list |
Liste tous les disques et partitions | diskutil list |
diskutil info /dev/disk0 |
Infos détaillées sur un disque | diskutil info /dev/disk0 |
launchctl list |
Services macOS actifs | launchctl list |
Fichiers importants sur macOS
| Chemin | Description |
|---|---|
~/Desktop |
Bureau |
~/Downloads |
Téléchargements |
~/Library |
Config et données des applications |
/Applications |
Applications installées |
/usr/local/bin |
Binaires installés par Homebrew (Intel) |
/opt/homebrew/bin |
Binaires Homebrew (Apple Silicon M1/M2/M3) |
~/.zshrc |
Configuration du shell Zsh |
~/.bash_profile |
Configuration Bash (si utilisé) |
~/.ssh/ |
Clés SSH |
/private/etc/hosts |
Fichier hosts (équivalent /etc/hosts) |
Astuces Terminal macOS
# Afficher les fichiers cachés dans Finder
defaults write com.apple.finder AppleShowAllFiles YES
killall Finder
# Copier le chemin du dossier courant dans le presse-papier
pwd | pbcopy
# Vider la corbeille depuis le terminal
rm -rf ~/.Trash/*
# Empêcher la mise en veille pendant 2 heures
caffeinate -t 7200
# Lire le contenu du presse-papier
pbpaste
# Convertir une image PNG en WebP avec sips (outil Apple intégré)
sips -s format webp image.png --out image.webp
# Voir la taille de tous les dossiers dans le répertoire courant
du -sh */ 2>/dev/null | sort -h
# Trouver les 10 plus gros fichiers dans Downloads
du -sh ~/Downloads/* | sort -rh | head -10
Configuration du shell Zsh (~/.zshrc)
Ajoutez ces lignes dans votre fichier ~/.zshrc pour personnaliser votre terminal :
# Alias pratiques
alias ll='ls -la'
alias gs='git status'
alias gp='git pull'
alias ..='cd ..'
alias ...='cd ../..'
# Afficher la branche Git dans le prompt
autoload -Uz vcs_info
precmd() { vcs_info }
zstyle ':vcs_info:git:*' formats ' (%b)'
setopt PROMPT_SUBST
PROMPT='%n@%m %~ ${vcs_info_msg_0_} $ '
Rechargez avec : source ~/.zshrc
Exemple concret
Une développeuse à Abidjan configure son MacBook pour un nouveau projet :
# Installer les outils de développement Apple
xcode-select --install
# Installer Node.js, Python et Git via Homebrew
brew install node python git
# Vérifier les versions
node --version
python3 --version
git --version
# Créer un projet
mkdir ~/projets/mon-api
cd ~/projets/mon-api
# Ouvrir dans VS Code
open -a "Visual Studio Code" .
# Trouver quel processus utilise le port 8000
lsof -i :8000
# Copier son adresse IP locale
ipconfig getifaddr en0 | pbcopy
À retenir
open .— ouvre le Finder dans le dossier courantpbcopy/pbpaste— presse-papier en ligne de commandebrew install— installer n'importe quel outil de développementlsof -i :PORT— identifier quel processus utilise un portcaffeinate— empêcher la mise en veille lors d'un long traitement- Les commandes Linux fonctionnent toutes sur macOS
- Config du shell :
~/.zshrc
Prochaine étape
Découvrez les commandes Linux en détail pour maîtriser les serveurs — consultez Les commandes Linux essentielles.