Ligne de commande Ubuntu : Commandes Bash essentielles pour les débutants et les utilisateurs avancés
La ligne de commande dans Ubuntu — communément appelée terminal — est l’un des outils les plus puissants disponibles pour les utilisateurs Linux. Que vous gériez des fichiers, installiez des logiciels, configuriez des paramètres système ou automatisiez des tâches répétitives, le terminal vous offre un contrôle direct et efficace sur votre système d’exploitation. Au cœur du terminal Ubuntu se trouve Bash, un shell de ligne de commande robuste qui interprète et exécute vos commandes avec rapidité et précision.
Ce guide complet couvre les commandes Bash les plus importantes et les plus couramment utilisées dans Ubuntu, vous fournissant une base solide pour travailler avec confiance et efficacité dans le terminal — que vous soyez un débutant complet ou que vous cherchiez à perfectionner vos compétences existantes.
Qu’est-ce que Bash ?
Bash (abréviation de *Bourne Again Shell*) est le shell de ligne de commande par défaut dans Ubuntu et dans la grande majorité des distributions Linux. Il s’agit d’une interface textuelle qui permet aux utilisateurs d’envoyer des commandes directement au système d’exploitation, en contournant entièrement les interfaces graphiques pour un contrôle plus rapide et plus précis.
Bash est extraordinairement puissant et prend en charge un large éventail de fonctionnalités, notamment :
- Scripts shell — automatiser des séquences complexes de commandes
- Historique des commandes — rappeler et réutiliser des commandes précédemment exécutées
- Alias — créer des raccourcis pour les commandes fréquemment utilisées
- Piping et redirection — enchaîner des commandes pour des flux de travail avancés
- Variables d’environnement — configurer dynamiquement le comportement du système et des applications
Comment ouvrir le terminal dans Ubuntu
Vous pouvez ouvrir le terminal Ubuntu de deux façons :
- Appuyez sur Ctrl + Alt + T sur votre clavier
- Recherchez "Terminal" dans le menu des applications (Activités ou Tiroir d’applications)
Une fois le terminal ouvert, vous êtes prêt à commencer à saisir des commandes Bash.
> Conseil Pro : Si vous gérez un serveur distant — comme un plan d’Hébergement VPS — vous accéderez généralement au terminal via SSH plutôt que via une interface de bureau locale. Les mêmes commandes Bash s’appliquent dans les deux environnements.
Commandes de navigation de base
Naviguer efficacement dans le système de fichiers Linux est la première compétence que tout utilisateur du terminal doit maîtriser. Les commandes suivantes constituent l’épine dorsale de la navigation dans les répertoires sous Ubuntu.
1. pwd — Afficher le répertoire de travail
La commande pwd affiche le chemin complet du répertoire dans lequel vous travaillez actuellement. Cela est particulièrement utile lorsque vous êtes profondément dans une structure de répertoires imbriqués et que vous devez confirmer votre emplacement.
pwdExemple de sortie :
/home/username/documents/projects2. ls — Lister le contenu d’un répertoire
La commande ls liste tous les fichiers et répertoires dans le répertoire de travail actuel. C’est l’une des commandes les plus fréquemment utilisées sous Linux.
lsVous pouvez étendre ses fonctionnalités avec plusieurs options utiles :
| Option | Description |
|---|---|
ls -l | Format long — affiche les permissions, le propriétaire, la taille et la date de modification |
ls -a | Afficher tous les fichiers, y compris les fichiers cachés (ceux commençant par .) |
ls -lh | Format long avec tailles de fichiers lisibles par l’homme (KB, MB, GB) |
ls -lt | Trier les fichiers par date de modification, les plus récents en premier |
ls -la | Combiner le format long avec l’affichage des fichiers cachés |
Exemple :
ls -lah /var/www/html3. cd — Changer de répertoire
La commande cd est utilisée pour naviguer entre les répertoires. C’est sans doute la commande la plus utilisée dans toute session de terminal Linux.
cd /path/to/directoryRaccourcis courants :
cd # Navigate to your home directory
cd ~ # Also navigates to your home directory
cd .. # Move up one directory level
cd - # Return to the previous directory
cd / # Navigate to the root directory4. mkdir — Créer un répertoire
La commande mkdir crée un nouveau répertoire au chemin spécifié.
mkdir new_directoryPour créer des répertoires imbriqués en une seule commande, utilisez l’option -p :
mkdir -p /home/username/projects/website/assetsCela crée automatiquement tous les répertoires intermédiaires, même s’ils n’existent pas encore.
5. rmdir — Supprimer un répertoire vide
La commande rmdir supprime un répertoire vide. Si le répertoire contient des fichiers ou des sous-répertoires, elle retournera une erreur.
rmdir directory_namePour supprimer un répertoire ainsi que tout son contenu, utilisez la commande rm avec l’option récursive (couverte dans la section suivante) :
rm -r directory_name> Avertissement : La commande rm -r supprime définitivement les fichiers et répertoires. Il n’y a pas de récupération via la Corbeille. Vérifiez toujours le chemin avant d’exécuter la commande.
Commandes de gestion des fichiers
La gestion des fichiers est une responsabilité fondamentale lorsque vous travaillez sur n’importe quel système Linux — d’un bureau personnel à un Serveur Dédié en production. Les commandes suivantes couvrent la création, la copie, le déplacement et la suppression de fichiers.
1. touch — Créer un nouveau fichier
La commande touch crée un nouveau fichier vide. Si le fichier existe déjà, elle met simplement à jour les horodatages d’accès et de modification du fichier sans en altérer le contenu.
touch file_name.txtVous pouvez créer plusieurs fichiers simultanément :
touch file1.txt file2.txt file3.txt2. cp — Copier des fichiers et des répertoires
La commande cp copie des fichiers ou des répertoires d’un emplacement à un autre.
cp source_file destinationOptions utiles :
| Option | Description |
|---|---|
cp -r | Copier récursivement un répertoire et tout son contenu |
cp -i | Demander confirmation avant d’écraser un fichier existant |
cp -v | Mode verbeux — afficher chaque fichier au fur et à mesure qu’il est copié |
cp -u | Copier uniquement les fichiers plus récents que la destination |
Exemples :
# Copy a single file
cp config.txt /etc/myapp/config.txt
# Copy an entire directory
cp -r /var/www/html /backup/html_backup3. mv — Déplacer ou renommer des fichiers
La commande mv remplit un double rôle : elle déplace des fichiers ou des répertoires vers un nouvel emplacement, et les renomme.
Déplacer un fichier vers un nouveau répertoire :
mv file_name.txt /new/directory/Renommer un fichier :
mv old_name.txt new_name.txtDéplacer et renommer simultanément :
mv /home/user/old_name.txt /var/www/html/new_name.txt4. rm — Supprimer des fichiers et des répertoires
La commande rm supprime définitivement des fichiers et des répertoires du système de fichiers.
rm file_name.txtOptions courantes :
| Option | Description |
|---|---|
rm -r | Supprimer récursivement un répertoire et tout son contenu |
rm -f | Forcer la suppression sans demander de confirmation |
rm -i | Demander confirmation avant de supprimer chaque fichier |
rm -rf | Forcer la suppression récursive — à utiliser avec une extrême prudence |
# Delete a single file
rm old_log.txt
# Delete a directory and all its contents
rm -r /tmp/old_project/> Avertissement critique : Exécuter rm -rf sur le mauvais chemin — surtout en tant qu’utilisateur root — peut causer des dommages irréversibles au système. Vérifiez toujours votre commande avant d’appuyer sur Entrée.
Visualisation et édition de fichiers
Le terminal Ubuntu fournit plusieurs outils puissants pour lire et éditer des fichiers texte directement, sans jamais avoir besoin d’ouvrir un éditeur de texte graphique. Ces commandes sont essentielles pour les administrateurs système gérant des fichiers de configuration sur des serveurs exécutant des environnements d’Hébergement Web Mutualisé ou une infrastructure dédiée.
1. cat — Afficher le contenu d’un fichier
La commande cat (abréviation de *concatenate*) affiche l’intégralité du contenu d’un fichier directement dans le terminal.
cat file_name.txtVous pouvez également utiliser cat pour combiner plusieurs fichiers :
cat file1.txt file2.txt > combined.txtEt pour afficher les numéros de ligne avec le contenu :
cat -n file_name.txt2. less — Afficher les fichiers page par page
La commande less est idéale pour lire de grands fichiers, car elle affiche le contenu un écran à la fois plutôt que de tout afficher d’un coup.
less file_name.txtNavigation dans less :
| Touche | Action |
|---|---|
Space ou f | Avancer d’une page |
b | Reculer d’une page |
Arrow keys | Faire défiler ligne par ligne |
/search_term | Rechercher un terme vers l’avant |
?search_term | Rechercher un terme vers l’arrière |
q | Quitter et retourner au terminal |
3. nano — Éditer des fichiers dans le terminal
La commande nano ouvre l’éditeur de texte Nano directement dans le terminal. Il est convivial pour les débutants, avec des raccourcis clavier affichés en bas de l’écran.
nano file_name.txtRaccourcis clavier essentiels de Nano :
| Raccourci | Action |
|---|---|
Ctrl + O | Enregistrer (écrire) le fichier |
Ctrl + X | Quitter Nano |
Ctrl + K | Couper la ligne actuelle |
Ctrl + U | Coller la ligne coupée |
Ctrl + W | Rechercher dans le fichier |
Pour une édition plus avancée, les administrateurs expérimentés préfèrent souvent Vim (vim file_name.txt) ou GNU Emacs, bien que Nano soit le point de départ recommandé pour les nouveaux utilisateurs.
4. head — Afficher le début d’un fichier
La commande head affiche par défaut les 10 premières lignes d’un fichier. Cela est utile pour vérifier rapidement le début des fichiers journaux ou des fichiers de configuration.
head file_name.txtPour spécifier un nombre de lignes personnalisé :
head -n 25 file_name.txt5. tail — Afficher la fin d’un fichier
La commande tail affiche les 10 dernières lignes d’un fichier. Cela est particulièrement utile pour surveiller les fichiers journaux en temps réel.
tail file_name.txtPour suivre un fichier journal au fur et à mesure de sa mise à jour en temps réel (extrêmement utile pour la surveillance des serveurs) :
tail -f /var/log/syslogPour afficher un nombre de lignes personnalisé :
tail -n 50 /var/log/auth.logCommandes Bash essentielles supplémentaires
Au-delà des fondamentaux couverts ci-dessus, les commandes suivantes sont indispensables pour tout utilisateur Ubuntu ou administrateur système.
grep — Rechercher des motifs de texte
grep "search_term" file_name.txt
grep -r "error" /var/log/ # Recursive search through a directory
grep -i "warning" system.log # Case-insensitive searchfind — Localiser des fichiers et des répertoires
find /home -name "*.txt" # Find all .txt files in /home
find /var/www -type f -name "*.php" # Find all PHP files
find / -size +100M # Find files larger than 100MBchmod — Modifier les permissions des fichiers
chmod 755 script.sh # Owner: read/write/execute; Group/Others: read/execute
chmod +x deploy.sh # Add execute permission for all userschown — Modifier la propriété des fichiers
chown username:groupname file.txt
chown -R www-data:www-data /var/www/htmlsudo — Exécuter des commandes en tant que superutilisateur
sudo apt update
sudo systemctl restart nginxapt — Gestion des paquets
sudo apt update # Refresh package lists
sudo apt upgrade # Upgrade all installed packages
sudo apt install package_name # Install a new package
sudo apt remove package_name # Remove a packageman — Accéder aux pages de manuel
man ls # View the manual for the ls command
man grep # View the manual for grepChaînage de commandes Bash et redirection
L’une des fonctionnalités les plus puissantes de Bash est la capacité d’enchaîner des commandes et de rediriger les entrées/sorties.
Piping (|)
L’opérateur pipe envoie la sortie d’une commande comme entrée d’une autre :
ls -la | grep ".txt" # List only .txt files
cat access.log | grep "404" # Find all 404 errors in a log
ps aux | grep nginx # Check if nginx is runningRedirection de sortie (> et >>)
echo "Hello World" > output.txt # Write to file (overwrites)
echo "New line" >> output.txt # Append to file
ls -la > directory_listing.txt # Save directory listing to fileRedirection d’entrée (<)
sort < unsorted_list.txt # Sort contents of a fileCas d’utilisation pratiques : commandes Bash dans la gestion de serveurs
Maîtriser les commandes Bash n’est pas seulement utile pour une utilisation locale sur un bureau — c’est absolument essentiel pour gérer des serveurs distants. Que vous configuriez un serveur web, déployiez une application ou diagnostiquiez des problèmes de performance, le terminal est votre outil principal.
Voici quelques scénarios réels où ces commandes sont appliquées quotidiennement :
- Gestion de serveur web : Éditer les fichiers de configuration Nginx ou Apache avec
nano, vérifier les journaux d’erreurs avectail -f, et gérer les répertoires racine web aveccp,mvetrm - Installation de certificats SSL : Naviguer vers les répertoires de certificats, vérifier les permissions des fichiers avec
ls -l, et éditer les fichiers de configuration — toutes des étapes critiques lors de la configuration des Certificats SSL sur votre serveur - Administration de bases de données : Utiliser
greppour rechercher dans les journaux de requêtes,findpour localiser les fichiers de base de données, etchmodpour sécuriser les fichiers de configuration sensibles - Sauvegardes automatisées : Écrire des scripts Bash combinant
cp,taretfindpour créer des sauvegardes planifiées des données critiques - Configuration de serveur de messagerie : Gérer les fichiers de configuration et surveiller les journaux pour les configurations d’Hébergement Email en utilisant
cat,lessettail
Référence rapide : aide-mémoire des commandes Bash essentielles
| Commande | Objectif | Exemple |
|---|---|---|
pwd | Afficher le répertoire actuel | pwd |
ls | Lister le contenu du répertoire | ls -lah |
cd | Changer de répertoire | cd /var/www |
mkdir | Créer un répertoire | mkdir -p /new/dir |
rmdir | Supprimer un répertoire vide | rmdir old_dir |
touch | Créer un fichier vide | touch index.html |
cp | Copier des fichiers/répertoires | cp -r src/ dest/ |
mv | Déplacer ou renommer | mv old.txt new.txt |
rm | Supprimer des fichiers/répertoires | rm -rf /tmp/cache |
cat | Afficher le contenu d’un fichier | cat config.txt |
less | Parcourir les grands fichiers | less access.log |
nano | Éditer des fichiers dans le terminal | nano nginx.conf |
head | Afficher les N premières lignes | head -n 20 log.txt |
tail | Afficher les N dernières lignes / en direct | tail -f syslog |
grep | Rechercher des motifs de texte | grep "error" log.txt |
find | Localiser des fichiers | find / -name "*.conf" |
chmod | Modifier les permissions | chmod 755 script.sh |
sudo | Exécuter en tant que superutilisateur | sudo apt update |
man | Consulter le manuel d’une commande | man grep |
Conclusion
Maîtriser les commandes Bash est l’une des compétences les plus précieuses que vous puissiez développer en tant qu’utilisateur Linux, développeur ou administrateur système. Les commandes couvertes dans ce guide — de la navigation de base avec pwd, ls et cd, à la gestion des fichiers avec cp, mv et rm, en passant par la visualisation et l’édition de fichiers avec cat, less, nano, head et tail — constituent la boîte à outils essentielle pour travailler efficacement dans le terminal Ubuntu.
À mesure que vous vous familiariserez avec ces fondamentaux, vous progresserez naturellement vers des sujets plus avancés tels que les scripts shell, la gestion des processus, les diagnostics réseau et la surveillance du système — qui s’appuient tous directement sur les bases établies ici.
Si vous souhaitez mettre ces compétences en pratique dans un véritable environnement Linux, AlexHost propose un Hébergement VPS haute performance avec accès SSH root complet, vous donnant un contrôle total sur votre serveur depuis la ligne de commande. Notre infrastructure est conçue pour la fiabilité, la rapidité et la flexibilité — que vous hébergiez un projet personnel, une application professionnelle ou une architecture multi-serveurs complexe.
Commencez dès aujourd’hui à explorer la puissance de la ligne de commande Ubuntu — et prenez le contrôle total de votre environnement Linux.
