Upload
fadwa-zed
View
80
Download
19
Embed Size (px)
Citation preview
Serie1:
TP1 :
Ennoncé :
1 )dans votre répertoire courant, créez en une commande les fichiers suivants :
fiche1, fiche2, Fiche4, fiche45, fichier41, Fichier510 en utilisant la commande touch
2 )lister tous les fichiers
a. Se terminant par 1
b. Commençant par fiche4
c. Commençant par fiche4 et de 7 lettres maximum
d. Commençant par fiche et se terminant par 2 chiffres numériques
e. Contenant la chaine ‘hier’
f. Commençant par f ou F
3) créer les répertoires Files et temp dans votre répertoire courant, en une commande déplacez les fichiers précédemment créés dans le répertoire temp.
4 )copier les fichiers dont l’avant dernier caractère est un 4 ou 1 dans le répertoire Files en une seule commande.
Objectif :
familialiser l’utilisation des commandes touch et ls
avoir créé des fichiers et les manipuler.
Commande1 : « touch »
Syntaxe :
$ touch [fichier…]
Permet de…
Crée un fichier vide de ce nom s’il n’existe pas,sinon change la date de dernière modification du fichier
touch –a : Modifie l’heure d’accès seulement
touch –m : Modifie la date de modification seulement
Commande2 : « ls »
Syntaxe : $ ls [option…] [(chemin|fichier)…]
Permet de…
Lister les fichiers d'un répertoire: (List Sorted)
ls -l : Permet de lister les attributs des fichiersls -d: Affiche uniquement les répertoiresls -a : Liste tous les fichiers du répertoire y compris les fichiers cachés.ls -m : Affiche les fichiers en les séparant par une virgule.ls -t : Affiche les fichiers par date.ls -lu : Affiche les fichiers par date du dernier accès et indique la date.ls -F : Affiche les fichiers par typels -S : Affiche les fichiers triés par ordre de taille décroissante.ls -X : Affiche les fichiers par type d'extensionls -r : Affiche les fichier en ordre alphabétique inversels -alR / : Affiche tous les fichiers d'un systèmels -alR |grep doc : Affiche tous les fichiers contenant doc
Correction :
1 ) smi4@ubuntu:~$ touch fiche1 fiche2 Fiche4 fiche45 fichier41 Fichier510
2 ) -smi4@ubuntu:~$ ls *1
-smi4@ubuntu:~$ ls fiche4*
-smi4@ubuntu:~$ ls fiche4?
-smi4@ubuntu:~$ ls fiche*[0-9][0-9]
-smi4@ubuntu:~$ ls *hier*
-smi4@ubuntu:~$ ls [fF]*
3 ) smi4@ubuntu:~$ mkdir ~/Files temp
smi4@ubuntu:~$ cp [fF]ich* temp
4 ) smi4@ubuntu:~$ cp temp/* [14]? Files
TP2 :
Ennoncé :
Dans votre répertoire personnel, créer un répertoire que vous appellerez catalogue,dans ce répertoire créer les fichiers suivants : fiche1,fiche2,f fiche22, fiche30, fiche40, fiche41, fiche, lettre1, prog.dat, program.cob, program.c, programme, emploiA, empoiB.
1 ) quel est le résultat de la commande ls dans chacun des cas suivant :
a. ls*.*
b. ls*.c
c. ls p*
d. ls *e*
e. ls fiche[0-9]
f. ls fiche[0-9]*
g. ls fich[ !0-9]*
h. ls lettr ??
2 ) aller au répertoire initial et créer en une seule commande un sous répertoire de catalogue appelé catalogue3.
3 ) copier tous les fichiers présents dans le répertoire catalogue se terminant par un caractère numérique dans catalogue3.
5 ) répéter la commande de la question 3 en utilisant l’option i
4 ) répéter la commande de la question 3 en utilisant l’option f
6 ) en une seule commande vider le conteu de cotr répertoire courant (travail)
Objectif :
bien maitriser les commandes de traitement de fichiers
lister un fichier
copier d’un fichier à un autre de façons différentes.
Commande1 : « cd »
Syntaxe :
$cd [ fichier]
Permet de … Se déplacer dans les répertoires (Change Directory)
cd.. : Remonte d'un niveaucd/ : Retourne à la racinecd- : Retourne au répertoire précédent
Commande2 : « mkdir »
Syntaxe :
$mkdir [option] répertoire …
Permet de …Créer des répertoire: (make directory)
mkdir : Crée un répertoire
mkdir -p:Crée un répertoire et ses sous répertoires associés.
Commande3 : « cp »
Syntaxe :
$cp [option…]fichier1 fichier2
Permet de…
Copier un fichier dans un autre endroit
cp : Demande s'il peut écraser le nom de fichier : répondre par Oui(y) ou Non (n)cp -f :Effacer les fichiers cibles existants (voir ci- dessus)cp -i : Avertit de l'existence d'un fichier du même nom et demande s'il peut ou non le remplacer.cp -l : Permet de faire un lien en "dur" entre le fichier source et sa copiecp -s : Permet de faire un lien "symbolique" entre le fichier source et sa copiecp -p : Permet lors de la copie de préserver toutes les informations concernant le fichier.cp -r : Permet de copier de manière récursive l'ensemble d'un répertoire et de ses sous
Commande3 : « rm »
Syntaxe :
$rm [option…]fichier1
Permet de…Supprimer des fichiers et répertoires: (remove & remove directory)
rm -d : Permet de supprimer un répertoire qu'il soit plein ou nonrm -r : Permet de supprimer un répertoire et ses sous répertoiresrm -f : Permet de supprimer les fichiers protégés en écriture et répertoires sans confirmationrmdir : Supprime un répertoirermdir -p rep1/rep2/rep :Supprime le répertoire et ses sous répertoire associés
NB :
pour accéder à un fichier on utilise la commande « cd », ‘cd fichier’ ou, on répete le chemin à chaque fois
Correction :
1 ) smi4@ubuntu:~$ mkdir ~/catalogue
2 ) smi4@ubuntu:~$ cd catalogue
smi4@ubuntu:~/catalogue$ touch fiche1 fiche2 fiche22 fiche30 fiche40 fiche41 fiche lettre1 prog.dat program.cob program.c programme emploiA emploiB
/home/userxGx
F1 F2
F11 F12 F13 F21 F22 F23
3 ) smi4@ubuntu:~$ cd catalogue
smi4@ubuntu:~/catalogue$ ls *.*
smi4@ubuntu:~/catalogue$ ls *.c
smi4@ubuntu:~/catalogue$ ls p*
smi4@ubuntu:~/catalogue$ ls *e*
smi4@ubuntu:~/catalogue$ ls fiche[0-9]
smi4@ubuntu:~/catalogue$ ls fiche[0-9]*
smi4@ubuntu:~/catalogue$ ls fich[!0-9]*
smi4@ubuntu:~/catalogue$ ls lettr??
4 ) smi4@ubuntu:~/catalogue$ mkdir ~/catalogue/catalogue3
smi4@ubuntu:~/catalogue$ cp [fl]*[0-9] catalogue3
5 ) smi4@ubuntu:~/catalogue$ cp -i [fl]*[0-9] catalogue3
smi4@ubuntu:~/catalogue$ cp -f [fl]*[0-9] catalogue3
6 ) smi4@ubuntu:~/catalogue$ rm -r ~/catalogue
TP3 :Soit l’arborescence suivante :
1) Dans votre répertoire personnel, crée en une seule commande
les répertoires l’arborescence ci-dessus en utilisant la commande
mkdir avec l’option –p ,F12,F13,F21,F22,et F23 en utilisanant
2) Créer le fichier ch1 dans le répertoire F22
3) Copier ch1 dans F11 sous le nom ch2
4) copier ch2 dans F12 sous le nom ch3
5) Lier ch2 à ch4 dans F13
6) lier ch1 à ch5 dans F13
7) Modifier le fichier ch2 en utilisant la commande cat
8) Afficher le contenue du fichier ch4
9) Supprimer le fichier ch2
10) copier ch1 dans F1 sous le nom ch6
11) Quel est le nombre de liens pour chacun des fichiers suivants :
ch1, ch2, ch3, ch4, ch5, ch6
12) Supprimer de deux façons les deux arborescences suivantes :
F1 et F2
Objectif :
manipuler les fichiers avec la commande cp
savoir faire des liens entre les fichiers,
afficher le contenu d’un fichier
faire la différence entre liens durs et symboliques
commande1 : « cat > »
Syntaxe :
$cat >fichier...
Permet de…
Donner la main pour écrire
Commande2 : « cat »
Syntaxe :
$cat fichier…
Permet de …
Afficher le contenu d’un fichier
Commande3 : « cp –s »
Syntaxe :
$cp –s fichier1 fichier2
Permet de… faire un lien "symbolique" entre le fichier source et sa copie(la modification effectuer au fichier source s’applique automatiquement sur la copie)
Correction :
1) smi4@ubuntu:~$ mkdir -p F1/F11 F1/F12 F1/F13 F2/F21 F2/F22 F2/F23
2) smi4@ubuntu:~$ touch F2/F22/ch1
3) smi4@ubuntu:~$ cp F2/F22/ch1 F1/F11/ch2
4) smi4@ubuntu:~$ cp F1/F11/ch2 F1/F12/ch3
5) smi4@ubuntu:~$ ln F1/F11/ch2 F1/F13/ch4
6) smi4@ubuntu:~$ ln F2/F22/ch1 F1/F13/ch5
7) smi4@ubuntu:~$ cat >F1/F11/ch2
8) smi4@ubuntu:~$ cat F1/F13/ch4
9) smi4@ubuntu:~$ rm -r F1/F11/ch2
10)smi4@ubuntu:~$ cp F2/F22/ch1 F1/ch6
11)ls links F1/F11/ch2 F2/F22/ch1 F1/F12/ch3 F1/F13/ch5 F1/F13/ch4 F1/ch6
12)a: rm –r F1 F2
b: rm F1/F11 ch1 ,rm F1/F11
serie 2 :
TP1 :
Ennoncé :
Quelles sont les commandes permettant de répondre aux questions suivantes :
1. qui suis-je ?
2. ou suis-je ?
3. qui est connecté ?
4. quel est le contenu du répertoire courant ?
Objectif :
determiner l’identité d’un utilisateur sous laquelle il se logge
préciser ou se trouve l’utilisateur
préciser qui est l’utilisateur
lister le contenu d’un répertoire
commande1 : « whoami »
Syntaxe : $ whoami
Commande2 : « pwd »
Syntaxe : $ pwd
Commande3 : « who »
Syntaxe : $ who
TP2:
Ennoncé :
1)créer un répertoire essai-grep dans votre home directory. Dans ce répertoire créer les fichiers suivants :
tomate poire pomme cerise Fraise fraise courgette POMME3 afraise
2)editez les fichiers(sortie de la commande ls redirigée vers grep) avec les critères sur leur nom
suivant :
a)critère 1 le nom doit etre Fraise ou fraise
b)critère 2 « se » est en fin de nom
c) critère 3 « ai » est présent dans le nom
d) critère 4 nom contenant un chiffre numérique
3)En une seule commande supprimer votre répertoire courant (travail)
Objectif :
Redirigée une commande vers une autre(la sortie d’une première cimmande devient l’entrée d’une deuxième commande)
Symboles de redirection :
< :redirection de l’entrée standard
> : redirection de la sortie standard
>> : redirection de la sortie standard à la fin d’un fichier
Commande1 : « ls > fichier »
Commande2 : « grep …fichier »
Après lister le fichier,on cherche dans cette sortie
smi4@ubuntu:~$ mkdir essai-grep
smi4@ubuntu:~$ cd essai-grep
smi4@ubuntu:~/essai-grep$ touch tomate poire pomme cerise Fraise fraise courgette POMME3 afraise
smi4@ubuntu:~/essai-grep$ ls >critère1
smi4@ubuntu:~/essai-grep$ grep ^[fF] critère1
smi4@ubuntu:~/essai-grep$ ls >critère2
smi4@ubuntu:~/essai-grep$ grep se$ critère2
smi4@ubuntu:~/essai-grep$ ls >critère3
smi4@ubuntu:~/essai-grep$ grep ai critère3
smi4@ubuntu:~/essai-grep$ ls >critère4
smi4@ubuntu:~/essai-grep$ grep [0-9] critère4
smi4@ubuntu:~/essai-grep$ cd ..
TP3:
Ennoncé:
1 . créer un fichier fruit.price dans votre repertoire tpunix et écrire le texte suivant ( en utilisant la commande cat ):
apples :9
apricot :7
bergamot :12
blackberry :39
cantaloupe :10
cherry :6
citron :5
elderberry :79
grape :59
grapefruit :67
huckleberry :66
indian mulberry :99
kiwi :19
lemon :8
mango :34
melon :50
noni :56
nut :19
orange :14
peach :17
pear :29
sloe :34
strawberry :80
2 . visionner votre fichier avec la commande more.
3 . à l’aide de grep, faire afficher les lignes de ce fichier :
a) Contenant l’expression « berry»
b) Contenant l’expression « appLES » en ignorant la casse (distinction minuscules/majuscule)
c) Ne Contenant pas l’expression « apples »
d) Dont le fruit commence pa la lettre ‘s’
e) Dont le fruit commence par une voyelle minuscule
f) Dont le fruit commence par la lettre ‘l’ ou une lettre comprise entre ‘a’ et ‘g’
g) Dont le fruit ne commence pas par une voyelle
h) Dont le fruit ne commence pas par une lettre comprise entre ‘a’ et ‘m’
i) Dont le prix se termine par 79
j) Dont le prix ne se termine pas par 9
k) Dont le prix se termine par9 mais pas par 39, 69, 79, ni 89
l) Dont le prix ne se termine pas par 09, ni par 39, ni par 79
4 . en une seule commande supprimer votre répertoire courant (travail).
Objectif :
Savoir une autre façon pour afficher le contenu d’un fichier
Utiliser le pipe dans la commande de recherche grep
Commande 1: « more »
Syntaxe :
$more [option] fichier
Permet de
Liste du contenu du fichier, arrêt en bas de l’écran
more –p : effacer l’ecran pour chaque page.
more +num : commencer à partir de la ligne num.
Commande 2: « grep [option]commande1 fichier |commande2»
Correction :
1) smi4@ubuntu:~$ mkdir tpunix
smi4@ubuntu:~$ touch tpunix/fruit.price
smi4@ubuntu:~$ cat >tpunix/fruit.price
2) smi4@ubuntu:~$ more tpunix/fruit.price
3) a:smi4@ubuntu:~$ grep apples tpunix/fruit.price
b:smi4@ubuntu:~$ grep -i appLES tpunix/fruit.price
c:smi4@ubuntu:~$ grep -v apples tpunix/fruit.price
d:smi4@ubuntu:~$ grep ^s tpunix/fruit.price
e:smi4@ubuntu:~$ grep ^[aieyou] tpunix/fruit.price
f:smi4@ubuntu:~$ grep ^[la-g] tpunix/fruit.price
g:smi4@ubuntu:~$ grep -v ^[aieyuo] tpunix/fruit.price
h:smi4@ubuntu:~$ grep -v ^[a-m] tpunix/fruit.price
i:smi4@ubuntu:~$ grep 79$ tpunix/fruit.price
j:smi4@ubuntu:~$ grep -v 9 tpunix/fruit.price
k:smi4@ubuntu:~$ grep 9$ tpunix/fruit.price|grep -v [3678]
l:smi4@ubuntu:~$ grep [1245689]9$ tpunix/fruit.price
4) smi4@ubuntu:~$ rm -r tpunix
TP4 :
Ennoncé:
1. Dans votre repertoire de travail personnel, créer un répertoire que vous appellerez tpunix.
2. Copier le fichier /etc/passwd dans votre répertoire tpunix sous le nom des_lignes
3. Afficher le contenu de ce fichier
4. Faire afficher la premiere ligne de des_lignes
5. Utiliser un nombre négatif en argument de l’option –n, faire afficher des_lignes mais pas ses deux dernières lignes.
6. Faire efficher les deux dernières lignes de des_lignes
7. Utiliser un nombre positif en argument de l’option –n, faie afficher des lignes mais pas ses cinq premières lignes.
8. Faire afficher les deux premières lignes de tous vos fichier d’extension .txt (de tpunix), sans en-tete
9. Crèer un fichier extremes (attention sans extension .txt), qui conteint la première ligne de tous les fichiers d’extension .txt et, ç la suite, leur dernière ligne, le tout sans en-tete
10. Faire afficher uniquement les lignes5, 6 et 7 de des_lignes.
Objectif :
Manipuler les fichiers par lignes
Afficher les premières lignes
Afficher les dérnières lignes
Commande1 : « head »
Syntaxe :
$head [option] fichier
Permet de…
Afficher les premiers lignes d’un fichier
head –n N : afficher les N premiers lignes
head –q : ne pas afficher les en-têtes
head –v : toujours afficher les en-têtes
head –version: afficher le numero de version à la sortie standard
Commande2 : « tail »
Syntaxe :
$tail [option] fichier
Permet de…
Afficher les derniers lignes d’un fichier
tail –n N : Afficher les N derniers lignes
tail –q : ne jamais afficher les en-têtes
tail –v : toujours afficher l’en-tête
tail –version : afficher un numéro de version
Correction :
1) smi4@ubuntu:~$ mkdir tpunix
2) smi4@ubuntu:~$ cp /etc/passwd tpunix/des_lignes
3) smi4@ubuntu:~$ more tpunix/des_lignes
4) smi4@ubuntu:~$ head -n 1 tpunix/des_lignes
5) smi4@ubuntu:~$ head -n -2 tpunix/des_lignes
6) smi4@ubuntu:~$ tail -n 2 tpunix/des_lignes
7) smi4@ubuntu:~$ tail –n 5 tpunix/des_lignes
8) smi4@ubuntu:~$ grep .txt tpunix/des _lignes | head -qn 59) smi4@ubuntu:~$ sed -n '5,7p' tpunix/des_lignes
TP5:
Ennoncé:
1) Recherche le fichier ordinaire fiche.txt dans l’arborescence de votre répertoire personnel. 2) Recherche le répertoire tpunix dans l’arborescence de votre répertoire personnel.
3) Rechercher tous les fichiers ordinaires vous appartenant dans toute l’arborescence du système de fichiers (c'est-à-dire depuis la racine). 4) Créer le fichier hebdo.txt contenant les références des fichiers ordinaires vous appartenant contenus dans l’arborescence du système de fichiers et qui ont été modifiés il y a moins d’une semaine. 5) Afficher tous les noms des fichiers répertoires commençant par une lettre majuscule. 6) Afficher tous les fichiers normaux ayant pour taille 150Ko ? 7) Afficher tous répertoires ayant les autorisations d’accès ‘ rwxr-xr-x ’