PARTIE 1

Commandes Unix Elementaires

Exercice 1

1. Créez un fichier premiertexte contenant une ou deux phrases.

2. Visualisez le contenu de premiertexte sans l'éditer.

3. Quelle est la taille de premiertexte ?

4. Editez PREMIERTEXTE. Que constatez-vous ?


Exercice 2

1. Faites une copie de premiertexte appelée double.

2. Comparez lers tailles.

3. Renommez double en introduction

4. Quelle différence y a-t-il encore mv double introduction et cp double introduction ?


Exercice 3

1. Créez un repertoire essai/.

2. Deplacer introduction dans essai/.

3. Faites une copie de premiertexte appelée copie, et placez-la également dans essai/.

4. Affichez une liste de ce que contient essai/.


Exercice 4

1. Essayez de detruire essai/. Que se passe t-il ? Que faut-il faire pour detruire un repertoire ?

2. Detruisez tout ce que contient essai/.

3. Detruisez essai/.


Exercice sur ls

1. Affichez le contenu de /usr/local/.

2. Quelle est la taille de votre .bashrc ?

3. A quoi sert l'option -R de ls ?

Nous voyons donc avec la capture d'écran si dessus que ls -R sert à afficher une liste des repertoires et de leurs sous-repertoires.

4. Dans quel ordre les fichiers et les repertoires sont-ils classés par défaut ? Quelles sont les options qui peuvent servir a modifier ce critere de classement ?

Les fichiers et repertoires sont classés par ordre alphabetique.


Exercice sur les repertoires

Exercice sur rmdir, rkdir

1. Créez trois répertoires en une seule ligne de commande.


2.Effacez ces trois répertoires en une seule ligne de commande


3.Que se passe-t-il si vous tapez mkdir mkdir ?


4.Vous voulez détruire un répertoire bla/, dont ls vous dit qu'il est vide. Cependant, quand vous tapez : rmdir bla, la machine vous repond : rmdir: bla: Directory not empty. Que faut-il faire ?

--> Il doit surement exister des fichiers cachés. Il faut donc vider le répertoire en premier. Si ce n'est pas le cas, on peut supprimer un répertoire avec l'option rm -R.

5. Est-ce que mkdir peut prendre des options ?

6. A quelle condition est-ce que la ligne de commande mkdir Rapport/annexes peut fonctionner et creer effectivement ce sous-repertoire ?

--> Il faut d'abord créer le répertoire Rapport. Ensuite, nous pouvons y mettre un autre sous-répertoire.

7. Y-a-t-il une option de mkdir qui permette de créer à la fois un répertoire et un sous-répertoire de ce répertoire ?

--> L'option -p permet de créer à la fois un répertoire et un sous-répertoire de ce répertoire.


8. Comment créer un répertoire en spécifiant des droits ?

--> L'option mkdir -m, suivi de 000 spécifie que personne ne peut avoir le droit d'accès au répertoire, même pas le propriétaire.

9. Quel est l'effet de la commande suivante :rmdir -p toto/tata/tutu/ ?

--> Cette commande permet de supprimer le répertoire tutu, sous le répertoire tata, sous le répertoire toto. Cependant, cela ne supprime que le répertoire tutu car tata et toto ne sont pas vides, donc la commande rmdir ne peut pas fonctionner.

10. Vous voulez créer à la fois un répertoire toto/ et un sous répertoire tutu/ dans toto/. Quelle option faut-il utiliser pour que :

1) Si toto/ n'existe pas, le répertoire et son sous-répertoire soient créés;

2) Si toto/ existe déjà, le sous-répertoire tutu/ soit créé, sans message d'erreur.

--> 1) Si toto/ n'existe pas, le commande $ mkdir -p toto/tutu permet de créer les deux répertoires.

--> 2) Si toto/ existe déjà, il ne faut pas ajouter d'option supplémentaire. Il suffit de mettre $ mkdir toto/tutu.

Exercice sur cd

1. Dans quel répertoire vous trouvez-vous quand vous vous connectez ?

2. Créér cette arborescence dans votre répertoire de travail.

3. Allez directement dans ~/Rapport/docs/affaire/.

4. De là, passez dans ~/Rapport/docs/fait/.

5. Revenez dans ~/Rapport/.

6. Sans changer de répertoire, regardez avec less le contenu de ~/www/index.html.

7. Passez dans ~/Rapport/docs/.

8. En restant là où vous êtes, affichez les droits de ~/Mail/

9. Revenez dans votre répertoire principal.

Exercice sur cp et mv

Exercice sur cp

1. Est-il possible de faire une copie d'un répertoire et de l'ensemble de ses sous-répertoires en une seule ligne de commande, sans d'abord faire une copie de chacun des fichiers l'un après l'autre ?

2. Que se passe-t-il si l'on veut faire une copie appelée tentative/ de son répertoire essai/, et que le répertoire tentative/ existe déjà ?

--> Avec la commande cp, lorsque le repertoire tentative/ existe déjà, le répertoire essai/ est mit dans le répertoire tentative/.

3. Que se passe-t-il si vous voulez faire une copie d'un fichier dans un répertoire où il existe déjà un fichier de ce nom ?

--> Le fichier toto.txt qui contient noel2 se remplace par celui qui contient noel.

4. Est-il possible de taper une ligne du genre de : cp fichier1 fichier2 fichier3 repertoire/ ? Quel est l'effet de cette ligne ?

--> La commande cp copie les fichiers et les met dans le répertoire tentative/.

Exercice sur mv

1. La syntaxe de mv est mv fichier1 fichier2; fichier1 est renommé en fichier2. Mais que se passe-t-il si fichier2 existe déjà ?

--> Dans ce cas, le fichier2 est écrasé et remplacé par fichier1. Ce fichier1 portera désormais le nom fichier2.

2. Supposez que vous avez chez vous l'arborescence précédente, et que vous vous trouvez dans ~/Rapport/docs/.

1)Comment faites-vous pour y amener Rapport.tex qui se trouve dans le répertoire père ?

2)Comment faites-vous ensuite pour ramener ce fichier à son emplacement d'origine ?

3. Comment renommer un répertoire bla en blo ? Que se passe-t-il si le répertoire blo existe déjà ?

--> On renome bla en blo grâce à la commande mv. Si le répertoire blo existe déjà, le répertoire bla sera déplacé et blo sera son sous-répertoire.

4. Comment faire pour à la fois déplacer un fichier et changer son nom ? Que se passe-t-il si il existe déjà un fichier de ce nom dans le répertoire d'arrivée ?

--> Si un fichier existe déjà, il sera écrasé et remplacé.

5. Mêmes questions avec un répertoire.

6. Que se passe-t-il si on lance mv avec les options -i et -f ensemble ?

--> Lorsque les options sont mises à la suite, la dernière option écrase les précédentes.

Exercice sur grep

Les options de grep

1. Quelles sont les options de grep qui permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent la ligne où figure le mot) ?

2. Comment faire apparaître le numéro de la ligne où figure le mot recherché ? Que se passe-t-il quand on demande également des lignes de contexte ?

3. Comment faire pour afficher le nombre d'occurences du mot recherché ?

4. Comment faire pour que grep ignore la casse des caractères (différence entre majuscules et minuscules) dans sa recherche ?

5. Comment faire pour faire apparaître non pas les lignes où figurent le mot, mais les noms des fichiers ?

6. Comment faire apparaître les lignes où ne figurent pas le mot recherché ?

7. Comment faire apparaître les noms des fichiers ne contenant pas le mot recherché ?

8. Comment faire pour que grep ne recherche que les lignes où figure le mot tel quel, et non pas ses variantes ? Par exemple : on cherche le mot «travail», mais pas «travailleur» ou «travailler».

9. Comment faire pour chercher plusieurs mots à la fois en faisant apparaître les numéros des lignes ?

Introduction aux expressions régulieres

Texte de Zola

1. Chercher toutes les lignes commençant par «a» ou «A».

2. Chercher toutes les lignes finissant par «rs».

3. Chercher toutes les lignes contenant au moins un chiffre.

4. Chercher toutes les lignes commençant par une majuscule.

5. Chercher toutes les lignes commençant par «B», «E» ou «Q».

6. Chercher toutes les lignes finissant par un point d'exclamation.

7. Chercher toutes les lignes ne finissant pas par un signe de ponctuation (point, virgule, point-virgule, deux-points, point d'interrogation, point d'exclamation).

8. Chercher tous les mots contenant un «r» précédé de n'importe quelle lettre majuscule ou minuscule.

9. Chercher tous les mots dont la seconde lettre est un «r».