1. Donner une suite de commandes permettant de créer cette arborescence dans votre répertoire personnel : le fichier fic2 doit contenir le texte "Bonjour le monde" et le fichier fic6 le texte "Merci et au revoir". (2,5pts)
mkdir ~test
mkdir -p ~/test/rep1 ~/test/rep2
mkdir ~/test/rep1/rep4
echo "Bonjour le monde" > ~/test/rep1/fic2
echo "Merci et au revoir" > ~/test/rep1/rep4/fic6
Explication :
- La commande
echo "Bonjour le monde" >
~/test/rep1/fic2 écrit le texte "Bonjour le monde" dans le fichier fic2 et le cree immediatement vue qu'il n/hexiste pas
.
- La commande
echo "Merci et au revoir" > rep4/fic6
écrit le texte "Merci et au revoir" dans le fichier fic6 et le cree immediatement vue qu'il n/hexiste pas
..
- La commande mkdir -p permet de créer un ou plusieurs répertoires, ainsi que leurs parents si ceux-ci n'existent pas déjà.
2. Donner deux façons d'exécuter un fichier de commandes en précisant les avantages et/ou les inconvénients de l'utilisation de l'une ou l'autre méthode. (2pts)
a) Utiliser la commande source ou le point . :
- Avantages : Les variables d'environnement et les fonctions définies dans le script sont disponibles dans la session en cours.
- Inconvénients : Le script s'exécute dans le même processus que la session en cours, ce qui peut avoir des effets de bord indésirables.
Explication : La commande source
ou le point .
permet d'exécuter un script en intégrant son contenu dans l'environnement courant. Cela a l'avantage de rendre les variables d'environnement et les fonctions définies dans le script disponibles dans la session en cours, mais peut avoir des effets de bord indésirables car le script s'exécute dans le même processus.
b) Utiliser la commande bash ou sh :
- Avantages : Le script s'exécute dans un nouveau processus, évitant ainsi les effets de bord.
- Inconvénients : Les variables d'environnement et les fonctions définies dans le script ne sont pas disponibles dans la session en cours.
Explication : La commande bash
ou sh
permet de forcer l'execution d' un script dans un nouveau processus, évitant ainsi les effets de bord. Cependant, les variables d'environnement et les fonctions définies dans le script ne sont pas disponibles dans la session en cours.
3. Donner trois façons de désigner le fichier fic6 depuis votre répertoire personnel. (1,5 pts)
- ~/test/rep1/rep4/fic6
- ~/test/rep1/rep4/./../fic6
- ~/test/rep1/./
../rep1/rep4/fic6
4. Donner la commande permettant de supprimer la sous-arborescence créée précédemment de votre répertoire personnel. (1 pt)
rm -rf test
Explication : La commande rm -rf ~
supprime récursivement (option -r
) et de force (option -f
) le répertoire test
et son contenu.
5. Quel sera le contenu des fichiers "a.txt" et "b.txt" après la commande : ls -R /usr >a.txt 2>b.txt (1,5 pts)
- Le fichier "a.txt" contiendra la liste de tous les fichiers et répertoires présents dans le répertoire "/usr" et ses sous-répertoires.
- Le fichier "b.txt" contiendra les éventuels messages d'erreur générés par la commande
ls -R /usr
.
Explication :
- La commande
ls -R /usr
liste récursivement le contenu du répertoire /usr
.
- Le redirection
>a.txt
envoie la sortie standard (la liste des fichiers et répertoires) dans le fichier a.txt
.
- Le redirection
2>b.txt
envoie la sortie d'erreur (les éventuels messages d'erreur) dans le fichier b.txt
.
6. Remplacer la suite de commandes suivantes par une commande unique : (1,5 pts)
chmod u+x,g=w,o-r fic1
chmod 532 fic1
chmod uo-rx,g=w fic1
chmod uo-rx,g=w fic1
ou

Explication : La commande chmod uo-rx,g=w fic1
remplace les trois commandes précédentes et applique les permissions suivantes :
- Propriétaire (u) : Écriture
- Groupe (g) : Écriture
- Autres (o) : Écriture