Aller au contenu principal

Module 3.2 – Ligne de commande (bases)

Objectif

Maîtriser les bases du terminal. Comprendre ce qu'est un terminal, apprendre les commandes essentielles pour naviguer dans les dossiers et gérer les fichiers.

Théorie

Qu'est-ce qu'un terminal ?

Le terminal (ou ligne de commande, shell, console) est une interface texte pour interagir avec l'ordinateur en tapant des commandes.

Pourquoi utiliser le terminal ?

  • Plus rapide pour certaines tâches
  • Automatisation possible
  • Accès à des outils en ligne de commande (Git, npm, etc.)
  • Essentiel pour le développement

Différences selon l'OS :

  • Windows : PowerShell ou CMD
  • macOS/Linux : Bash, Zsh, ou autres shells

Afficher le dossier actuel

Windows (PowerShell) :

pwd

Windows (CMD) :

cd

macOS/Linux :

pwd

Changer de dossier

Commande : cd (change directory)

cd nom_du_dossier           // Entrer dans un dossier
cd .. // Remonter d'un niveau
cd ../.. // Remonter de deux niveaux
cd // Aller au dossier home
cd /chemin/complet // Aller à un chemin absolu

Exemples :

cd Documents                // Entrer dans Documents
cd Formation // Entrer dans Formation (depuis Documents)
cd .. // Revenir à Documents
cd ~ // Aller au dossier home (macOS/Linux)
cd C:\Users\Nom // Aller à un chemin spécifique (Windows)

Lister les fichiers

Windows (PowerShell) :

ls                          // Liste simple
ls -l // Liste détaillée
Get-ChildItem // Alternative

Windows (CMD) :

dir                         // Liste simple
dir /w // Liste en colonnes

macOS/Linux :

ls                          // Liste simple
ls -l // Liste détaillée
ls -a // Inclure les fichiers cachés
ls -la // Liste détaillée avec fichiers cachés

Gestion des fichiers et dossiers

Créer un dossier

Tous les OS :

mkdir nom_dossier
mkdir dossier1 dossier2 // Créer plusieurs dossiers
mkdir -p chemin/complet // Créer avec sous-dossiers (macOS/Linux)

Supprimer un dossier

Windows :

rmdir nom_dossier           // Dossier vide uniquement
rmdir /s nom_dossier // Dossier avec contenu (demande confirmation)

macOS/Linux :

rmdir nom_dossier           // Dossier vide uniquement
rm -r nom_dossier // Dossier avec contenu (attention !)
rm -rf nom_dossier // Forcer la suppression (très dangereux !)

Créer un fichier

Windows (PowerShell) :

New-Item fichier.txt
echo "contenu" > fichier.txt

Windows (CMD) :

type nul > fichier.txt
echo contenu > fichier.txt

macOS/Linux :

touch fichier.txt           // Fichier vide
echo "contenu" > fichier.txt // Fichier avec contenu

Supprimer un fichier

Windows :

del fichier.txt
Remove-Item fichier.txt // PowerShell

macOS/Linux :

rm fichier.txt
rm fichier1.txt fichier2.txt // Plusieurs fichiers

Copier un fichier

Windows :

copy fichier.txt destination/
Copy-Item fichier.txt destination/ // PowerShell

macOS/Linux :

cp fichier.txt destination/
cp fichier.txt nouveau_nom.txt // Copier et renommer
cp -r dossier/ destination/ // Copier un dossier

Déplacer/Renommer

Windows :

move fichier.txt destination/
move fichier.txt nouveau_nom.txt // Renommer
Move-Item fichier.txt destination/ // PowerShell

macOS/Linux :

mv fichier.txt destination/
mv fichier.txt nouveau_nom.txt // Renommer
mv dossier/ destination/ // Déplacer un dossier

Commandes utiles

Afficher le contenu d'un fichier

Windows :

type fichier.txt
Get-Content fichier.txt // PowerShell

macOS/Linux :

cat fichier.txt             // Afficher tout le contenu
head fichier.txt // Premières lignes
tail fichier.txt // Dernières lignes
less fichier.txt // Navigation (q pour quitter)

Rechercher dans les fichiers

Windows (PowerShell) :

Select-String "texte" fichier.txt

macOS/Linux :

grep "texte" fichier.txt
grep -r "texte" dossier/ // Rechercher dans tous les fichiers

Nettoyer l'écran

Tous les OS :

clear                       // macOS/Linux
cls // Windows

Chemins absolus vs relatifs

Chemin absolu : Depuis la racine du système

  • Windows : C:\Users\Nom\Documents\fichier.txt
  • macOS/Linux : /Users/Nom/Documents/fichier.txt

Chemin relatif : Depuis le dossier actuel

  • fichier.txt : Dans le dossier actuel
  • dossier/fichier.txt : Dans un sous-dossier
  • ../fichier.txt : Dans le dossier parent
  • ../../fichier.txt : Deux niveaux au-dessus

Raccourcis utiles

Navigation :

  • Tab : Auto-complétion (complète le nom de fichier/dossier)
  • / : Historique des commandes
  • Ctrl + C : Annuler la commande en cours
  • Ctrl + L : Nettoyer l'écran (macOS/Linux)

Windows PowerShell :

  • Ctrl + C : Annuler
  • Tab : Auto-complétion

Exercice

  1. Navigation de base

    • Ouvrez le terminal
    • Affichez votre dossier actuel
    • Naviguez dans vos dossiers Documents
    • Listez les fichiers
    • Remontez d'un niveau
  2. Créer une structure

    • Créez un dossier "test-terminal"
    • Entrez dedans
    • Créez 3 fichiers : fichier1.txt, fichier2.txt, fichier3.txt
    • Listez pour vérifier
  3. Manipuler les fichiers

    • Créez un sous-dossier "sous-dossier"
    • Déplacez fichier1.txt dans ce sous-dossier
    • Copiez fichier2.txt en fichier2-copie.txt
    • Supprimez fichier3.txt
  4. Utiliser les chemins

    • Avec un chemin relatif, accédez à un dossier parent
    • Avec un chemin absolu, accédez à votre dossier Documents
    • Revenez au dossier de test
  5. Auto-complétion

    • Tapez le début d'un nom de fichier
    • Appuyez sur Tab pour voir l'auto-complétion
    • Testez avec plusieurs fichiers

Quiz

  1. Que fait la commande cd .. ?

    • Crée un dossier
    • Remonte d'un niveau dans l'arborescence
    • Liste les fichiers
  2. Quelle commande liste les fichiers sur macOS/Linux ?

    • dir
    • ls
    • list
  3. Comment créer un fichier vide sur macOS/Linux ?

    • new fichier.txt
    • touch fichier.txt
    • create fichier.txt
  4. Que signifie un chemin relatif ?

    • Un chemin depuis la racine
    • Un chemin depuis le dossier actuel
    • Un chemin vers Internet
  5. Que fait Tab dans le terminal ?

    • Supprime un fichier
    • Auto-complète le nom
    • Crée un dossier

Mini défi

Mission : Organiser un projet via le terminal

Créez entièrement la structure d'un projet web en utilisant uniquement le terminal :

Structure à créer :

mon-projet-web/
├── index.html
├── style.css
├── script.js
├── images/
│ └── (vide pour l'instant)
├── pages/
│ ├── about.html
│ └── contact.html
└── assets/
├── css/
│ └── main.css
└── js/
└── app.js

Étapes :

  1. Créez le dossier principal mon-projet-web
  2. Entrez dedans
  3. Créez tous les sous-dossiers nécessaires
  4. Créez tous les fichiers
  5. Vérifiez la structure avec ls -R (macOS/Linux) ou tree (Windows si installé)
  6. Affichez le contenu d'un fichier pour vérifier

Commandes à utiliser :

  • mkdir pour créer les dossiers
  • touch ou New-Item pour créer les fichiers
  • cd pour naviguer
  • ls ou dir pour lister
  • tree ou ls -R pour voir l'arborescence complète

Objectif : Maîtriser la navigation et la gestion de fichiers/dossiers via le terminal.


Validation : Vous pouvez passer au Parcours 4 quand vous êtes capable de naviguer, créer, supprimer et gérer des fichiers/dossiers via le terminal.

Félicitations ! Vous avez terminé le Parcours 3 - Environnement de développement. Vous êtes maintenant prêt à coder !