Retour au cours

premiers pas

Objectifs

  • Naviguer dans le système de fichiers avec aisance (pwd, ls, cd).
  • Manipuler les fichiers et les dossiers : créer, copier, déplacer, supprimer.
  • Consulter le contenu des fichiers avec les outils appropriés (cat, less).
  • Savoir trouver de l’aide de manière autonome avec man et --help.

Explications détaillées

Notions clés

Le système de fichiers Linux/macOS est organisé comme un arbre inversé. La racine de tout est /.

  • pwd (Print Working Directory) : Comme un GPS, cette commande vous dit “vous êtes ici”. Elle affiche le chemin complet du dossier où vous vous trouvez.
  • ls (List) : Permet de regarder autour de vous. Elle liste le contenu du dossier courant.
  • cd (Change Directory) : C’est le moyen de se déplacer.
    • cd /home/user/Documents : Chemin absolu (commence par /), vous y emmène depuis n’importe où.
    • cd Documents : Chemin relatif, fonctionne seulement si Documents est dans votre dossier actuel.
    • cd .. : Monte d’un niveau, va au dossier parent.
    • cd ~ ou juste cd : Retourne à votre dossier personnel (/home/votre_nom).

Commandes de base : Interagir avec les fichiers

  • Création :
    • mkdir nom_dossier : Crée un nouveau dossier.
    • touch nom_fichier : Crée un fichier vide. Si le fichier existe déjà, met à jour sa date de modification.
  • Visualisation :
    • cat nom_fichier : Affiche tout le contenu d’un fichier. Idéal pour les petits fichiers.
    • less nom_fichier : Affiche le contenu d’un fichier page par page. Utilisez les flèches pour naviguer et q pour quitter. Indispensable pour les longs fichiers (logs, etc.).
  • Manipulation :
    • cp source destination : Copie un fichier ou un dossier.
    • mv source destination : Déplace ou renomme un fichier/dossier.
    • rm fichier : Supprime un fichier. Attention, cette action est irréversible !

Aide intégrée : Votre meilleur ami

Vous n’avez pas besoin de tout mémoriser. Bash a une aide intégrée très complète.

  • man commande (manual) : Affiche le manuel complet d’une commande. C’est la source d’information la plus détaillée. (Ex: man ls).
  • commande --help : Affiche une aide plus concise, directement dans le terminal. C’est parfait pour un rappel rapide sur les options. (Ex: ls --help).

Syntaxe / Usages

# Lister le contenu de manière détaillée et lisible pour un humain
ls -lh

# Créer une arborescence de dossiers en une fois
mkdir -p projet/src/components

# Copier un fichier vers un autre dossier
cp mon_fichier.txt ./backup/

# Renommer un fichier (c'est en fait un déplacement au même endroit avec un nom différent)
mv ancien_nom.txt nouveau_nom.txt

# Supprimer un dossier et tout ce qu'il contient (commande très dangereuse)
# rm -r mon_dossier

# Supprimer un fichier en demandant confirmation
rm -i fichier_a_supprimer.txt

Exemples

# Mettons en pratique !

# 1. Où suis-je ?
pwd

# 2. Créons un espace de travail
mkdir mon_atelier

# 3. Allons-y
cd mon_atelier

# 4. Créons quelques fichiers
touch recette.txt
touch liste_courses.txt

# 5. Listons-les avec des détails
ls -l

# 6. Copions la recette pour la modifier
cp recette.txt recette_modifiee.txt

# 7. Renommons la liste de courses
mv liste_courses.txt courses_semaine_32.txt

# 8. Visualisons le contenu (vide pour l'instant) de la recette
cat recette.txt

# 9. Supprimons la copie de la recette
rm recette_modifiee.txt

# 10. Comment lister par taille de fichier ? Je ne sais plus... Demandons de l'aide !
ls --help

Bonnes pratiques

  • Préférez less à cat pour les fichiers dont vous ne connaissez pas la taille. Cela évite d’inonder votre terminal.
  • Utilisez l’option -i (interactive) avec rm (rm -i fichier) quand vous n’êtes pas sûr. Elle vous demandera une confirmation avant chaque suppression.
  • Prenez l’habitude de lire le man pour chaque nouvelle commande que vous découvrez. C’est le meilleur investissement pour apprendre.
  • Utilisez le “tab completion” : commencez à taper un nom de fichier ou de commande et appuyez sur la touche Tab. Bash essaiera de compléter le nom pour vous. C’est rapide et ça évite les fautes de frappe.

Pièges courants

  • rm -rf : La commande la plus dangereuse. rm supprime, -r supprime les dossiers et leur contenu (récursif), -f force la suppression sans demander. Une faute de frappe comme rm -rf / peut effacer votre système. À utiliser avec une extrême prudence.
  • Espaces dans les noms de fichiers : Si un fichier s’appelle mon fichier.txt, la commande rm mon fichier.txt essaiera de supprimer deux choses : mon et fichier.txt. Il faut mettre le nom entre guillemets : rm "mon fichier.txt".
  • Sensibilité à la casse : Sur Linux, MonDossier et mondossier sont deux choses différentes. C’est une source d’erreurs fréquente quand on vient de Windows.

Exercices

  1. Mise en situation :

    • Créez un dossier ~/Bureau/ProjetX.
    • Déplacez-vous à l’intérieur de ce dossier.
    • Créez-y deux fichiers : index.html et style.css.
    • Créez un sous-dossier nommé images.
    • Copiez le fichier index.html dans images sous le nom index_backup.html.
    • Listez le contenu du dossier ProjetX puis celui du dossier images pour vérifier que tout est en place.
    • Retournez à votre dossier personnel (~) en une seule commande.
  2. Écrire un mini-script de préparation :

    • Créez un fichier setup.sh.
    • Le script doit effectuer les actions suivantes :
      1. Créer un dossier rapports_mensuels.
      2. À l’intérieur, créer un fichier vide nommé rapport_aout_2025.txt.
      3. Afficher le message “Le dossier ‘rapports_mensuels’ et son fichier initial ont été créés.”
    • Rendez le script exécutable (chmod +x setup.sh) et lancez-le.
  3. Jouer au détective avec man :

    • Utilisez man ls pour trouver l’option qui permet de trier les fichiers par date de modification, les plus récents en premier.
    • Utilisez man cp pour savoir ce que fait l’option -v (verbose).
    • Testez ces deux options dans votre terminal.

Sujets abordés