Module Linux et Programmation Avancée
TP 2 : Commandes pour la gestion de Répertoires et Fichiers
sous Unix
Exercice 1 : Lister le contenu de votre répertoire personnel
Testez la commande ls en affichant, depuis votre répertoire personnel, la liste de tous vos
fichiers et sous-répertoires :
1. sous un format condensé (uniquement les noms)
2. sous un format long (affichant les permissions, le propriétaire, la taille, ...)
3. en affichant aussi les fichiers cachés (dont le nom commence par un point)
4. en colorant le nom des fichiers suivant leur type et en ordre inverse
Bleu : répertoires
Vert : fichiers exécutables
Rouge : archives
Cyan : liens symboliques
Blanc : fichiers normaux
5. avec un format long et en affichant les fichiers cachés, mais du plus récent au plus
ancien (au lieu de l’ordre alphabétique qui est utilisé par défaut)
6. avec un format long et en affichant les fichiers cachés, mais du plus ancien au plus
Récent
Exercice 2 : Gestion de Répertoires
Effectuer l’ensemble des actions suivantes et donnez pour chaque action la
(les) commandes correspondante(s).
1. Dans votre répertoire personnel, créez un dossier TP_UNIX.
2. En restant dans votre répertoire personnel, créez les dossier tp1 tp2 et tp3
dans le répertoire TP_UNIX à l’aide d’une seule commande.
3. Déplacez-vous dans le répertoire TP_UNIX.
4. Créez les répertoires tp4 tp5 et tp6 à l’aide d’une seule commande.
5. Quelle(s) différence(s) faites-vous entre ces deux commandes pour créer les
répertoires ?
Méthode 1 (question 2) :
mkdir TP_UNIX/tp1 TP_UNIX/tp2 TP_UNIX/tp3
Création avec chemins complets depuis le répertoire parent
Nécessite de spécifier le chemin complet pour chaque répertoire
Méthode 2 (question 4) :
mkdir tp4 tp5 tp6
Création avec chemins relatifs depuis le répertoire courant
Plus simple et plus courte
Différences principales :
Longueur de commande : Méthode 2 plus concise
Flexibilité : Méthode 1 permet de créer dans différents répertoires en
une commande
Contexte : Méthode 1 utilisée depuis le parent, méthode 2 depuis le
répertoire cible
6. En restant dans le répertoire TP_UNIX, créez en une seule commande un
dossier QCM, lui-même contenant qcm1 et qcm2.
7. Si vous avez donné 3 arguments à la commande précédente, essayer de faire
cette même action avec seulement 2 arguments (et en utilisant une option en
plus des arguments).
L’arborescence est la suivante :
Exercice 3 : Arborescence et chemins
À la suite de l’exercice précédent, vous vous trouvez toujours dans le répertoire
TP_UNIX.
1. Déplacez-vous dans le répertoire qcm1 en une seule commande.
2. Utilisez la commande cd sans paramètre. Où vous retrouvez-vous ?
On retourne dans le répertoire personnel (/home/administrateur)
3. Déplacez-vous dans le répertoire qcm1. Avez-vous tapé la même commande
qu’à première question de cet exercice ? Pourquoi ?
Différence avec la question 1 :
Question 1 : cd QCM/qcm1 (chemin relatif depuis TP_UNIX)
Question 3 : cd TP_UNIX/QCM/qcm1 (chemin relatif depuis le répertoire
personnel)
Pourquoi : Parce que nous ne sommes plus dans le même répertoire de départ
4. Allez dans le répertoire « grand-parent » de qcm1 (donc dans le répertoire
TP_UNIX). Donnez le chemin relatif par rapport au répertoire où vous vous
trouvez (qcm1) et donnez le chemin absolu pour vous rendre dans ce
répertoire.
# Chemin relatif
# Chemin absolu
cd /home/kali/TP_UNIX
5. Donnez la commande pour trouver le chemin absolu de votre répertoire
personnel. Quel est ce chemin ?
# Commande pour trouver le chemin absolu
# Alternative avec la variable d'environnement
echo $HOME
6. Pour vous déplacer dans le répertoire QCM donnez les chemins absolus (à
partir de la racine puis à partir de votre répertoire personnel) et le chemin
relatif.
#Chemin absolu depuis la racine :
#Chemin absolu depuis le répertoire personnel :
#Chemin relatif depuis qcm1 :
Exercice 4 : Gestion de Fichiers
À la suite de l’exercice précédent, vous vous trouvez toujours dans le répertoire
QCM.
1. Créez les fichiers vides [Link], [Link] et [Link] en une
seule commande.
2. Créez le répertoire controles
3. Renommez le répertoire controles en examens
4. Déplacer les fichiers [Link], [Link] et [Link] dans le
répertoire examens.
5. Déplacez-vous dans le répertoire examens puis copiez tous les fichiers dans
le répertoire qcm1.
6. Déplacez-vous dans le répertoire qcm1 et créez en une seule commande les
fichiers [Link], [Link] et [Link].
A ce stade, pour visualiser facilement l’arborescence et les fichiers quelle
contient, vous pouvez utiliser la commande tree.
Exercice 5 : Suppression de répertoire et de fichiers
À la suite de l’exercice précédent, vous vous trouvez dans le répertoire qcm1.
1. Essayer d’effacer le répertoire examens à l’aide de la commande rmdir.
Pourquoi cela ne fonctionne pas ?
La commande rmdir ne peut supprimer le répertoire examens car le
répertoire n’est pas vide, et donc rmdir sert à suprimer seulement les
répertoires vides.
2. Supprimer le répertoire qcm2.
3. Déplacer-vous dans le dossier TP_UNIX. En une seule commande. Dupliquez
le répertoire qcm1 et tout ce qu’il contient sous le nom qcm2.
4. Déplacez-vous dans le répertoire qcm2.
5. Supprimez tous les fichiers dont le nom commence par controle (utilisez
pour cela un « joker »).
6. Créez le fichier caché [Link].
7. Affichez l’ensemble des fichiers du répertoire qcm2 avec les fichiers cachés
et en format long.
8. Supprimez le dossier qcm1 et tout ce qu’il contient en une seule commande.
Exercice 6 :
À A la suite de l’exercice précédent vous vous trouvez dans le répertoire qcm2.
1. Dans le répertoire QCM créez les fichiers suivants : [Link] [Link]
[Link] et [Link].
2. Affichez tous les fichiers de QCM dont le nom commence par la lettre Q
majuscule.
3. Affichez les noms de fichiers donc la troisième lettre est un M majuscule.
4. Affichez les noms de fichiers qui se terminent par l’extension .txt
5. Supprimez tous les fichiers que vous avez créés lors de la première question
de cet exercice en essayant de spécifier le moins d’arguments possible.
On a utilisé rm ../QCM/[Qq]*.* au lieu de rm ../QCM/[Qq]* parce que le
premier motif ne correspond qu’aux fichiers ayant une extension, tandis que le
second inclurait aussi le dossier qcm2. Cependant, même si on avait utilisé rm
../QCM/[Qq]*, cela n’aurait pas supprimé le répertoire qcm2, car rm ne peut
pas effacer un répertoire contenant des fichiers