• Aucun résultat trouvé

CT 2014/2

N/A
N/A
Protected

Academic year: 2022

Partager "CT 2014/2"

Copied!
2
0
0

Texte intégral

(1)

Unix et Programmation Shell

 juin 

Vous r´ epondrez aux questions en utilisant deux lignes en moyenne.

Q 1. Donner une commande pour compter les lignes vides du fichier

foo

?

Q 2. Que d´ ecrit la section 1 du manuel

unix.

Q 3. Le chercheur McIlroy a invent´ e un concept fondamental du syst` eme

unix. Lequel ?

Q 4. Que signifie l’acronyme CLI ? Q 5. Commenter.

$> PS1=”$PS1$PS1$PS1$PS1”

$> $> $> $>

Q 6. Quel est le r´ esultat de la commande

$> e c h o { 0 , 1 } { 0 , 1} { 0 , 1 }

Q 7. Donner un exemple d’appel syst` eme im- pliqu´ e dans une redirection.

Q 8. Donner un exemple d’appel syst` eme im- pliqu´ e dans un pipeline.

Q 9. Quelle est la particularit´ e du binaire

/bin/passwd

?

Q 10. La commande qui suit affiche une liste de fichiers dont

/etc/resolv.conf. Pourquoi ?

$> g r e p −lE ’ ( [ 0 − 9 ] { 1 , 3 } \ . ) { 3 } [ 0 − 9 ]{ 1 , 3 } ’ / e t c /∗

Q 11. Quelle diff´ erence entre

fclose

et

close

? Q 12.

$> s t a t −−f o r m a t=’%n %A’ /tmp/ f o o /tmp/ f o o dr−xr−xr−x

$> rm /tmp/ f o o / ba r

rm : i m p o s s i b l e de s u p p r i m e r /tmp/ f o o / bar :

P e r m i s s i o n non a c c o r d e e Comment effacer le fichier ?

Q 13. Deviner le r´ esultat de la commande :

$> f i n d / b i n −e x e c u t a b l e −name ’ p ? ’ Q 14. Quelle est l’utilit´ e de la commande

wget

? Q 15. Que fait le script

1 #!/bin/bash

2

sum=0

3 while

[ $#

−gt 0 ] ; do

4

let sum+=$1

5 shift

6 done

7 echo

$sum

Q 16. Que fait la commande :

$> f i n d −name ’ ∗ ’ −e x e c l s {} \ ; Q 17. Quelle est l’utilit´ e de la variable

PATH

? Q 18. Deviner le r´ esultat de la commande

$> l s / | head −5

Q 19. La commande

ssh

permet d’ouvrir un shell sur un hˆ ote distant. Que signifie l’acronyme SSH ?

Q 20. Expliquer

$> e c h o −−h e l p

−−h e l p

$> e n a b l e −n e c h o

$> e c h o −−h e l p

U t i l i s a t i o n : e c h o [SHORT − OPTION ] . . . [ STRING ] . . .

. . .

Q 21. Quel est le r´ esultat de

$> e c h o { 0 . . 9 } \

| awk ’ { p r i n t $ 3 $ 1$ 2 $ 6 } ’ Q 22. Que fait la commande

$> s e d −i r E ’ s / ˆ [ ] + / / ’ f i c h i e r

1

(2)

1 e x e c v e ( ” / b i n / bash . . .

2 open ( ” / e t c / l d . s o . c a c h e ” , O RDONLY) = 3

3 open ( ” / dev / t t y ” , O RDWR|O NONBLOCK|O LARGEFILE) = 3

4 open ( ” / p r o c / meminfo ” , O RDONLY) = 3

5 r e a d ( 3 , ”MemTotal : 508520 kB\nMemF ” . . . , 1 0 2 4 ) = 1024

6 c l o n e ( P r o c e s s 2325 a t t a c h e d

7 [ p i d 2 3 2 4 ] c l o n e ( P r o c e s s 2326 a t t a c h e d

8 [ p i d 2 3 2 4 ] c l o n e ( P r o c e s s 2327 a t t a c h e d

9 [ p i d 2 3 2 7 ] dup2 ( 4 , 0 ) = 0

10 [ p i d 2 3 2 6 ] dup2 ( 3 , 0 ) = 0

11 [ p i d 2 3 2 6 ] dup2 ( 5 , 1 ) = 1

12 [ p i d 2 3 2 7 ] open ( ” / tmp/ c o u n t ” , O WRONLY|O CREAT|O TRUNC|O LARGEFILE , 066

13 [ p i d 2 3 2 7 ] dup2 ( 3 , 1 ) = 1

14 [ p i d 2 3 2 7 ] e x e c v e ( ” / u s r / b i n /wc ” , [ ” wc ” , ”−c ” ] , [ /∗ 52 v a r s ∗/ ] ) = 0

15 [ p i d 2 3 2 5 ] dup2 ( 4 , 1 ) = 1

16 [ p i d 2 3 2 6 ] e x e c v e ( ” / b i n / c a t ” , [ ” c a t ” ] , [ /∗ 52 v a r s ∗/ ] ) = 0

17 [ p i d 2 3 2 5 ] e x e c v e ( ” / b i n / e c h o ” , [ ” / b i n / e c h o ” , ” h e l l o ” , ” w o r l d ” ] , [ /∗ 52

18 [ p i d 2 3 2 7 ] open ( ” / e t c / l d . s o . c a c h e ” , O RDONLY) = 3

19 [ p i d 2 3 2 6 ] open ( ” / e t c / l d . s o . c a c h e ” , O RDONLY) = 3

20 [ p i d 2 3 2 5 ] open ( ” / e t c / l d . s o . c a c h e ” , O RDONLY) = 3

21 [ p i d 2 3 2 5 ] <. . . open resumed> ) = 3

22 [ p i d 2 3 2 6 ] r e a d ( 0 , <u n f i n i s h e d . . .>

23 [ p i d 2 3 2 7 ] <. . . open resumed> ) = 3

24 [ p i d 2 3 2 7 ] r e a d ( 3 , ”# L o c a l e name a l i a s d a t a b a s e .\n # ” . . . , 4 0 9 6 ) = 2512

25 [ p i d 2 3 2 5 ] w r i t e ( 1 , ” h e l l o w o r l d\n ” , 12 <u n f i n i s h e d . . .>

26 [ p i d 2 3 2 7 ] r e a d ( 3 , <u n f i n i s h e d . . .>

27 [ p i d 2 3 2 5 ] <. . . w r i t e resumed> ) = 12

28 [ p i d 2 3 2 6 ] <. . . r e a d resumed> ” h e l l o w o r l d\n ” , 3 2 7 6 8 ) = 12

29 [ p i d 2 3 2 6 ] w r i t e ( 1 , ” h e l l o w o r l d\n ” , 1 2 ) = 12

30 [ p i d 2 3 2 6 ] r e a d ( 0 , ” ” , 3 2 7 6 8 ) = 0

31 [ p i d 2 3 2 7 ] <. . . r e a d resumed> ” ” , 4 0 9 6 ) = 0

32 [ p i d 2 3 2 7 ] r e a d ( 0 , ” h e l l o w o r l d\n ” , 1 6 3 8 4 ) = 12

33 [ p i d 2 3 2 7 ] r e a d ( 0 , ” ” , 1 6 3 8 4 ) = 0

34 [ p i d 2 3 2 7 ] w r i t e ( 1 , ”12\n ” , 3 ) = 3

35−−− {s i s i g n o=SIGCHLD, s i c o d e=CLD EXITED , s i p i d =2326 , s i s t a t u s =0 , s i

Fig.

1 – traces d’une commande.

Q 23. Que fait la commande

$> g r e p −Eo ’ [ 0 − 9 ] + ’ s r c

Q 24. Donner le temps d’ex´ ecution de la com- mande

$> s l e e p 10 & s l e e p 20 et celui de la commande

$> s l e e p 10 && s l e e p 20

Q 25. Ecrire un script pour calculer n!.

Q 26. Le script ci-dessous a ´ et´ e utilis´ e pour obtenir les traces de la figure ( 1).

#!/ b i n / bash

s t r a c e − f f −e t r a c e=open , read , w r i t e , dup2 , c l o n e , e x e c v e \ bash −c ” $ ∗” |& s e d ’ s / bash . ∗ / bash . . . / ’ \

| g r e p −vE ’ ( s h a r e | l i b | s t a c k |ˆ Proc |ELF) ’ | c u t −c1−72 > t r a c e s . t x t – Combien de processus ont ´ et´ e lanc´ es ?

– Quelle commande a ´ et´ e trac´ ee ?

2

Références

Documents relatifs

1. Architecture en couches. Ouvrir et fermer une session Unix. Les commandes Unix. Le manuel en ligne d’Unix. Le fichier Unix. Op´erations ´el´ementaires sur les fichiers.

Il existe alors des crit`eres (alg´ebriques ou graphiques) permettant de d´eterminer la stabilit´e d’un syst`eme en boucle ferm´ee ` a partir de l’´etude en fr´equence en

Les syst` emes d’exploitation distribu´ es (Distributed Operating Systems) : ces syst` eme sont con¸cu pour permettre une migration transparente des processus et des donn´ ees de

Les syst` emes d’exploitation distribu´ es (Distributed Operating Systems ) : ces syst` eme sont con¸ cu pour permettre une migration transparente des processus et des donn´ ees de

Les syst` emes d’exploitation distribu´ es (Distributed Operating Systems ) : ces syst` eme sont con¸ cu pour permettre une migration transparente des processus et des donn´ ees de

◮ Utilisation mod´er´ee de l’espace RAM car on ne charge que l’inode du fichier ouvert : la taille sur le disque ne d´epend que du nombre de fichiers ouverts simultanement. ◮

D´ efinition (rang d’un syst` eme ´ echelonn´ e) : Le rang r d’un syst`eme ´echelonn´e `a p ´equations et n inconnues est ´egal au nombre d’´equations qui n’ont pas un

Parfois, mais c’est rare (tout comme, on l’a vu, dans le cas des ´ equations diff´ erentielles uniques), il est possible de calculer, si l’on se donne une condition initiale