Chapitre 3.3 - Navigation et Commandes de Base
Objectifs d'Apprentissage
À la fin de ce chapitre, vous serez capable de:
- Naviguer efficacement dans le système de fichiers
- Utiliser les commandes de base pour les fichiers
- Comprendre les wildcards et patterns
- Manipuler les fichiers et répertoires
Navigation
Commandes de Navigation
# Où suis-je?
pwd
# Changer de répertoire
cd /home/user1
cd ~ # Home directory
cd # Home directory (raccourci)
cd .. # Répertoire parent
cd - # Répertoire précédent
cd ../.. # Deux niveaux plus haut
# Lister
ls # Liste simple
ls -l # Détails (long format)
ls -la # Tout (y compris .fichiers)
ls -lh # Tailles lisibles (human)
ls -lt # Trié par date
ls -ltr # Trié par date (inverse)
ls -R # Récursif
Options Utiles de ls
# Par taille
ls -lhS
# Par extension
ls -lX
# Couleurs
ls --color=auto
# Ignorer certains patterns
ls --ignore='*.txt'
Manipulation de Fichiers
Créer des Fichiers
# Créer un fichier vide
touch fichier.txt
# Créer plusieurs fichiers
touch file1.txt file2.txt file3.txt
# Créer avec timestamp spécifique
touch -t 202401011200 fichier.txt
Afficher le Contenu
# Afficher tout
cat fichier.txt
# Afficher avec numéros de ligne
cat -n fichier.txt
# Afficher page par page
less fichier.txt
more fichier.txt
# Premières lignes
head fichier.txt
head -n 20 fichier.txt
# Dernières lignes
tail fichier.txt
tail -n 20 fichier.txt
tail -f fichier.txt # Suivre en temps réel
Copier et Déplacer
# Copier
cp source.txt destination.txt
cp file1.txt file2.txt /home/user1/
cp -r repertoire/ destination/ # Récursif
# Déplacer/Renommer
mv ancien.txt nouveau.txt
mv fichier.txt /home/user1/
mv *.txt /home/user1/ # Tous les .txt
Supprimer
# Supprimer un fichier
rm fichier.txt
# Supprimer récursif
rm -r repertoire/
rm -rf repertoire/ # Force (attention!)
# Supprimer avec confirmation
rm -i fichier.txt
# Supprimer plusieurs
rm file1.txt file2.txt file3.txt
rm *.txt # Tous les .txt
Répertoires
Créer des Répertoires
# Créer un répertoire
mkdir mon_repo
# Créer plusieurs
mkdir repo1 repo2 repo3
# Créer avec parents
mkdir -p chemin/complet/vers/repo
# Avec permissions
mkdir -m 755 mon_repo
Supprimer des Répertoires
# Répertoire vide
rmdir repo_vide
# Répertoire avec contenu
rm -r repo
rm -rf repo # Force (attention!)
Wildcards et Patterns
Caractères Spéciaux
# * : N'importe quels caractères
ls *.txt # Tous les .txt
ls file* # Commence par "file"
ls *log* # Contient "log"
# ? : Un seul caractère
ls file?.txt # file1.txt, file2.txt, etc.
ls ???.txt # Exactement 3 caractères
# [] : Caractères spécifiques
ls file[123].txt # file1.txt, file2.txt, file3.txt
ls file[0-9].txt # file0.txt à file9.txt
ls file[a-z].txt # filea.txt à filez.txt
# {} : Expansion
mkdir {dir1,dir2,dir3}
cp file.{txt,bak}
Exemples Pratiques
# Tous les fichiers .log
ls *.log
# Fichiers commençant par "test"
ls test*
# Fichiers avec 3 caractères
ls ???
# Fichiers de backup
ls *.bak *.old *.tmp
Recherche de Fichiers
find
# Par nom
find /home -name "fichier.txt"
find /home -iname "fichier.txt" # Insensible casse
# Par type
find /home -type f # Fichiers
find /home -type d # Répertoires
# Par taille
find /home -size +100M # Plus de 100MB
find /home -size -1k # Moins de 1KB
# Par date
find /home -mtime -7 # Modifié dernière semaine
find /home -mtime +30 # Modifié il y a plus de 30 jours
# Exécuter une commande
find /home -name "*.txt" -exec rm {} \;
find /home -name "*.log" -delete
locate
# Plus rapide que find
locate fichier.txt
# Mettre à jour la base
sudo updatedb
# Ignorer la casse
locate -i fichier
Résumé
Dans ce chapitre, vous avez appris:
Navigation: pwd, cd, ls avec options
Fichiers: touch, cat, less, head, tail
Manipulation: cp, mv, rm avec options
Répertoires: mkdir, rmdir, rm -r
Wildcards: *, ?, [], pour patterns
Recherche: find, locate pour trouver fichiers
Prochaines Étapes
Chapitre 3.4: Gestion des Fichiers
Chapitre 3.5: Permissions Fichiers
Chapitre créé le: Décembre 2024