Les TD/TP avec corrections. Cours Système d Exploitation I. Programme : Filière SMI S3

Dimension: px
Commencer à balayer dès la page:

Download "Les TD/TP avec corrections. Cours Système d Exploitation I. Programme : Filière SMI S3"

Transcription

1 UNIVERISTE MOHAMMED PREMIER Faculté des Sciences d Oujda Oujda - Maroc Les TD/TP avec corrections Cours Système d Exploitation I Programme : Filière SMI S3 Pr. El Mostafa DAOUDI Département de Mathématiques et d Informatique Année universitaire 2014/2015

2 Contenu Enoncés TD/TP série N TD/TP série N TD/TP série N TD/TP série N Corrections TD/TP série N TD/TP série N TD/TP série N

3 Université Mohammed Premier Année universitaire Faculté des Sciences Filière SMI Département de Mathématiques Module : Système d Exploitation I et d Informatique Semestre : S3 TD/TP: Série Numéro 2 Exercice1 : 1. Créer à l'aide de la commande «mkdir» un répertoire de nom «rep» dans votre répertoire racine (répertoire de connexion ou «home directory»). 2. Placez-vous dans «rep» et examiner le contenu de ce dernier, en utilisant successivement les commandes «ls», «ls -l», «ls -a». 3. Le répertoire «rep» contient-il des fichiers? Si oui, qui sont-ils? 4. Tapper les commande suivante. % cat. % cd. % pwd Conclure: % rm.. % cd.. % pwd Conclure: 5. A partir du répertoire «rep» : - Exécuter les commandes «ls -ai» et «ls -ali». Conclure. - Exécuter la commande «cd..» ensuite «ls -id rep», conclure. - Exécuter ensuite la commande «ls -id ~» ou «ls -id ~etudiant», conclure. 6. Placez vous dans le répertoire «rep», - En utilisant la commande «cat», créez dans ce répertoire un fichier nommé «fich1.txt» contenant la phrase : «Mon premier fichier sous unix.» - Créer un répertoire «rep1». Ensuite se placer dans le répertoire «rep1» et exécuter les commandes : % ls -ali ~/rep % ls -ali.. % ls -ail../.. % ls -ali ~ Comparer les résultats 7. Tappez % cd / % pwd % cd.. % pwd Conclure % cd % pwd Conclure 3

4 % cd / % cd ~ % pwd Conclure 8. Placez vous dans le répertoire «rep», ensuite exécuter les commandes suivantes : %touch.fich1 %touch fich2 9. Remonter d un niveau dans l arborescence (exécuter la commande «% cd..») puis effectuer les commandes suivantes : % ls -l rep - Effacer les fichiers qui sont listés par la commande «ls». Que se passe t-il si on exécute la commande. % rmdir rep - Exécuter la commande % ls -la rep Conclure Exercice 2 : 1. Supposons que vous êtes connecté en tant que «etudiant». A partir du sous-répertoire «rep», lister le contenu du répertoire de connexion de l utilisateur «smi» en utilisant un chemin absolu (Nom absolu) et un chemin relatif (nom relatif). 2. Revenez à votre répertoire racine et créez un sous-répertoire nommé «Rep-unix». 3. En utilisant cat, créez dans ce répertoire un fichier «fich1.txt» contenant la phrase : «Mon premier fichier sous unix.» 4. Copiez le fichier «fich1.txt» dans «fich2.txt», ensuite comparer les i-nodes des deux fichiers. 5. Modifiez le nom du fichier «fich2.txt» en «fich3.txt», ensuite afficher les i-nodes des fichiers «fiche1.txt» et «fiche3.tx». Qu observez vous au niveau i-nodes?. 6. Créez un deuxième répertoire «test» dans votre répertoire racine, et un sous-répertoire «sous-test» dans le répertoire «test». 7. A partir du répertoire racine, - déplacez le fichier «fich3.txt» le répertoire «~/test/sous-test». - copiez le fichier «fich3.txt» dans votre répertoire racine. - Supprimez le fichier fich3.txt du répertoire «~/test/sous-test». 8. A partir du répertoire «sous-test» - Créez un lien physique nommé «lien_fich1» vers le fichier «fich1.txt» - Comparer les i-nodes des fichiers «lien_fich1» et «fich1.txt». - En utilisant la commande «cat», visualisez le contenu du fichier «lien_fich1». Qu observez-vous? - Modifiez le fichier «fich1.txt» en rajoutant le mot fin à la fin du fichier et visualisez le contenu du fichier «lien_fich1». Qu observez-vous? - Modifier le contenu du fichier «lien_fich1» en rajoutant le mot «au revoir» à la fin du fichier et visualiser le contenu de «fich1.txt». Qu observez-vous? Conclure. - Supprimer le fichier «fich1.txt» - Visualiser le contenu de répertoire «sous-test» - Visualiser le contenu du fichier «lien_fich1». Qu observez-vous? 9. Refaire le même travail avec un lien symbolique et comparer les deux résultats 4

5 Université Mohammed Premier Année universitaire Faculté des Sciences Filière SMI Département de Mathématiques Module : Système d Exploitation I et d Informatique Semestre : S3 TD/TP: Série Numéro 3 Exercice1: 1. Que font les commandes suivantes : ls /etc ls /etc/* ls /etc/p* ls -d /etc 2. Donner la commande qui permet de lister les fichiers et sous- répertoires du répertoire «/etc» qui commencent avec la lettre «p» - sans lister le contenu des sous-répertoires trouvés. - sans lister le contenu des sous-répertoires trouvés. L affichage sera nné avec le masque de protection pour chaque fichier. - en plus elle liste de manière récursive, le contenu des sous-répertoires trouvés. - suivie d un caractère quelconque, suivi de la lettre «m», suivie de n importe quelle chaine de caractères, en plus, elle affiche le contenu de chaque sous-répertoire trouvé. - suivie d un caractère quelconque, suivi de la lettre «m», suivie de n importe quelle chaine de caractères, suivie de la lettre «a» ou de la lettre «d», sans lister le contenu des sous-répertoires trouvés. - suivie d un caractère quelconque, suivi de la lettre «m» ou «n» ou «p», suivie de n importe quelle chaine de caractères. L affichage sera nné avec plus d informations sur chaque ficher affiché. - suivie d un caractère quelconque, suivi de la lettre «m», «n», «o» ou «p», suivie de n importe quelle chaine de caractères. L affichage sera nné avec plus d informations sur chaque ficher affiché. 3. Que font les commandes suivantes : ls /etc /bin ls -d /etc /bin/* ls /etc/p* /bin/b* Exercice2: Quelle est la commande qui permet de lister tous les fichiers de «/usr/bin» nt le nom: Commence par «as» ou par «sa». Commence par «r», «s», «v», ou «z». Ne commence ni avec «d» ni avec «s». Comporte au moins un «f». Comporte au moins deux «f». Comporte au moins 3 caractères. Comporte exactement 3 caractères. Comporte au plus 3 caractères. Exercice 3 : 1. Créer dans votre répertoire de connexion, un sous répertoire nommé «D2_tp3». Si ce répertoire existe effacer son contenu. 5

6 2. A l aide de l éditeur de texte «gedit», écrire un programme en langage «C» qui affiche 10 fois la chaine : "Je suis la tache 1". Sauvegarder ce programme, dans le répertoire «D2_tp3», sous le nom «tache1.c». 3. Compiler et exécuter ce programme. Pour le fichier exécutable, on lui nne le nom «tache1». 4. Quels sont les droits d'accès pour ces deux fichiers. 5. En utilisant le symbole «=», modifier les droits d accès du fichier «tache1.c» de telle sorte que la lecture, l écriture et l exécution soient autorisées pour le propriétaire du fichier, les autres utilisateurs n auront aucun droit. 6. Enlever, au propriétaire le droit d exécution et rajouter au groupe et aux autres utilisateurs la possibilité de lire le fichier «tache1.c». 7. Enlever, au propriétaire du fichier «tache1.c», le droit de lecture et lui rajouter le droit d exécution, ensuite recompiler le fichier, que se passe-t-il?. 8. A l aide de la forme octal, modifier les droits d accès du fichier exécutable «tache1» pour avoir les permissions suivantes : «rw-r--r--r». Que se passe t-il si on exécute le programme? 9. Enlever, au propriétaire du fichier «tache1.c», le droit d écriture ensuite modifier le contenu du fichier en remplaçant la chaine "je suis la tache1" par la chaine "tache1 \n". Que se passe-t-il? 10. tapez la commande «ls -ld /etc». En se basant sur le résultat obtenu, expliquer ce qui se passe lorsqu on tape les commandes suivantes cd /etc mkdir rep rm passwd ls -l passwd cd cp /etc/passwd. Exercice 4 : 1. Créer un répertoire nommé «D21» dans le répertoire «D2_tp3». 2. Déplacer le fichier «tache1» dans le répertoire «D21» 3. Créer un autre sous-répertoire nommé «table» du répertoire «D2_tp3». 4. Copier le fichier «tache1.c» dans le répertoire «D21» et lui nner le nom «tache3.c» 5. A partir du répertoire «D2_tp3» lancer la commande «find» qui cherche tous les noms des fichiers qui commencent avec «ta». 6. Enlever, pour le propriétaire, le droit de lecture sur le répertoire «D21» et relancer la commande «find». Que se passe t-il? 7. Relancer la commande «find» en redirigeant : - les résultats dans le fichier «res.txt» et les erreurs vers le fichier «err.txt» - les résultats et les erreurs vers fichiers «resultats.txt» Exercice5 : 1. Ecrire une commande qui nne: - le nombre de fichiers du répertoire courant - le nombre de répertoires du répertoire courant - le nombre de fichiers ordinaires du répertoire courant 2. Refaire la question 1 pour un répertoire nné 3. Ecrire une commande qui permet d afficher : - le nombre d utilisateurs utilisant le «bash» comme shell par défaut - les utilisateurs qui utilisent le «bash» comme shell par défaut. - les utilisateurs qui utilisent le «bash» comme shell par défaut ainsi que leur nombre. - les utilisateurs qui commence avec «e» ou «s» et qui utilise le «bash» comme shell par défaut. 6

7 Université Mohammed Premier Année universitaire Faculté des Sciences Filière SMI Département de Mathématiques Module : Système d Exploitation I et d Informatique Semestre : S3 TD/TP: Série Numéro 4 Exercice1 : En utilisant la commande find «lister» tous les fichiers qui ne sont ni des fichiers ordinaires ni des répertoires. Pour les tests, vous créez un répertoire nommé «rep», ensuite à l aide de la commande «cat» ou «touch», créez deux fichiers nommés «fiche1» et «fiche2», enfin vous créez deux liens symboliques nommés «lien_fiche1» vers le fichier «fiche1» et «lien_fiche2» vers le fichier «fiche2» Exercice2: A l aide de la commande grep, lister tous les fichiers du répertoire /etc/x11 nt le nom - Contient la lettre x. - Commence par la lettre x. - Contient la lettre x ou X. - Commence avec la lettre X ou x. - Commence par la lettre X ou x et qui contient un ou plusieurs chiffres. - Commence par la lettre X ou x et qui finit par un chiffre. Exercice3: - Lister tous les fichiers cachés du répertoire de connexion sauf les répertoires. - Lister tous les fichiers ordinaires cachés du répertoire de connexion. Exercice4 : 1. Ecrire une commande qui nne la liste des fichiers du répertoire «/etc» qui commencent avec la lettre «p» et qui sont triés par type. 2. Ecrire une commande qui nne la liste des fichiers du répertoire «/etc» qui commencent avec la lettre «p» triés suivant le nombre de liens (ordre croissant et ordre décroissant). 3. Créer le fichier «resultat.txt» qui a le contenu suivant : Nom Résultat Omar 18 Ali 8 Fatima 15 Mohammed 18 Houcine 16 Zahra 5 Hassane 15 a. Afficher le contenu du fichier «resultat.txt» sauf les deux lignes titres (les deux premières lignes). b. Trier le fichier par ordre alphabétique (les deux lignes titres ne figurent pas sur la sortie). c. Trier le ficher par ordre croissants suivant le champ «Résultat» (les deux lignes titres ne figurent pas sur la sortie). d. Trier le ficher par ordre décroissants suivant le champ «Résultat» (Les deux lignes titres figurent sur la sortie). 7

8 4. Supposons maintenant que le contenu du fichier «resultat.txt» est comme suit : Nom Résultats Omar 18:10 :12 Ali 8 :19 :0 Fatima 15 :16 :12 Mohammed 18:10:20 Houcine 16:0:10 Zahra 5:13:10 Hassane 15 :16 :12 a. Trier le fichier par ordre croissant suivant le premier résultat b. Trier le fichier par ordre croissants suivant le premier résultat, puis suivant le troisième résultat. c. Afficher avec classement Exercice5 : 1. Donner la commande qui permet d afficher la liste de tous les utilisateurs. 2. Ecrire un script qui affiche la liste de tous les utilisateurs avec leur numéro de ligne de la façon suivante : par exemple si l utilisateur «etudiant» se trouve sur la ligne 4, alors il sera affiché comme suit : etudiant:4 Exercice 6 1. Ecrire un script qui affiche ses paramètres dans l ordre inverse. 2. Ecrire un script qui permet de saisir une série de nombres. La saisie s arrête quand l utilisateur tape la valeur 0. Ensuite le script affiche les nombres saisis dans l ordre inverse. Exercice 7 A l aide des structure conditionnelle «if» et «case-esac» : 1. Ecrire un script qui affiche un message indiquant les types des fichiers passés en argument au script. 2. Ecrire un script qui affiche un message indiquant les types des fichiers du répertoire courant. 8

9 Université Mohammed Premier Année universitaire Faculté des Sciences Filière SMI Département de Mathématiques Module : Système d Exploitation I et d Informatique Semestre : S3 TD: Série Numéro 5 A corriger pendant la séance du cours du Lundi 22 Décembre 2014 Exercice 1 : On reprend les nnées de l exercice 4 (série TD-TP N 4), question 4 : Supposons que le contenu du fichier «resultat.txt» est comme suit : Nom Résultats Omar 18:10 :12 Ali 8 :19 :0 Fatima 15 :16 :12 Mohammed 18:10:20 Houcine 16:0:10 Zahra 5:13:10 Hassane 15 :16 :12 Ecrire un script shell qui permet de rajouter dans le fichier «resultat.txt» une nouvelle colonne qui contient la somme des trois résultats. Exercice 2 : Ecrire un script shell qui permet de calculer le PGCD de deux entiers positifs passés en argument au script (paramètres positionnels) en utilisant l algorithme d Euclide défini de la façon suivante : Soit 0 b a Si b=0 pgcd(a,b) = a Sinon pgcd(a,b)=pgcd(b,r) où r est la division euclidienne entre a et b : a = bq + r avec 0 r<b Le script contient : - Une fonction qui test que les arguments sont des entiers positifs - Une fonction qui calcule le PGCD de manière itérative - Une fonction qui calcule le PGCD de manière récursive. 9

10 Exercice1: 1. Que font les commandes suivantes : ls /etc Correction TD/TP: Série Numéro 3 affiche la liste des fichiers et sous-répertoires du répertoire «/etc» sauf les fichiers et répertoires cachés. ls /etc/* affiche la liste des fichiers et sous-répertoires ainsi que le contenu de chaque sous-répertoire du répertoire «/etc» sauf les fichiers et répertoires cachés. ls /etc/p* Affiche la liste des fichiers et sous-répertoires du répertoire «/etc», qui commencent avec la lettre «p», en plus, elle affiche le contenu de chaque sous-répertoire trouvé. ls -d /etc cette commande vérifie si le fichier «/etc» existe, si oui elle affiche son nom. 4. Donner la commande qui permet de lister les fichiers et sous- répertoires du répertoire «/etc» qui commencent avec la lettre «p», sans lister le contenu des sous-répertoires trouvés. %ls -d /etc/p* 5. Donner la commande qui permet de lister les fichiers et sous- répertoires du répertoire «/etc» qui commencent avec la lettre «p», sans lister le contenu des sous-répertoires trouvés. L affichage sera nné avec la masque de protection pour chaque fichier. %ls -ld /etc/p* 6. Donner la commande qui permet de lister les fichiers et sous- répertoires du répertoire «/etc» qui commencent avec la lettre «p», en plus lister, de manière récursive, le contenu des sous-répertoires. %ls -R /etc/p* 10

11 7. Donner la commande qui permet de lister les fichiers et sous-répertoires du répertoire «/etc» qui commencent avec la lettre «p» suivie d un caractère quelconque, suivi de la lettre «m» suivie de n importe quelle chaine de caractères, en plus, elle affiche le contenu de chaque sous-répertoire trouvé. %ls /etc/p?m* 8. Donner la commande qui permet de lister les fichiers et sous- répertoires du répertoire «/etc» qui commencent avec la lettre «p» suivie d un caractère quelconque, suivi de la lettre «m» suivie de n importe quelle chaine de caractères suivie de la lettre «a» ou la lettre «d», sans lister le contenu des sous-répertoires trouvés. %ls -d /etc/p?m*[a,d] ou % ls /etc/p?m*[ad] 9. Donner la commande qui permet de lister les fichiers et sous-répertoires du répertoire «/etc» qui commencent avec la lettre «p» suivie d un caractère quelconque, suivi de la lettre «m», «n» ou «p» suivie de n importe quelle chaine de caractères, du répertoire «/etc». L affichage sera nné avec plus d informations sur chaque ficher affiché. %ls -ld /etc/p?[m,n,p]* 10. Donner la commande qui permet de lister les fichiers et sous-répertoires du répertoire «/etc» qui commencent avec la lettre «p» suivie d un caractère quelconque, suivi de la lettre «m», «n», «o» ou «p» suivie de n importe quelle chaine de caractères, du répertoire «/etc». L affichage sera nné avec plus d informations sur chaque ficher affiché. %ls -ld /etc/p?[m-p]* 11. Que font les commandes suivantes : ls /etc /bin affiche la liste des fichiers et sous-répertoires du répertoire «/bin» suivi de la liste des fichiers et sous-répertoires du répertoire «/etc». ls -d /etc /bin/* affiche la liste des fichiers et sous-répertoires du répertoire «/bin», ainsi que le contenu de chaque sous-répertoire trouvé, suivi du répertoire «/etc». ls /etc/p* /bin/b* 11

12 affiche la liste des fichiers et sous-répertoires qui commencent avec la lettre «b» du répertoire «/bin» suivie de la liste des fichiers et sous-répertoires qui commencent avec la lettre «p» du répertoire «/etc» ainsi que le contenu de chaque sous-répertoire trouvé. Exercice2: Quelle est la commande qui permet de lister tous les fichiers de «/usr/bin» nt le nom: Commence par «as» ou par «sa». %ls -d /usr/bin/as* /usr/bin/sa* ou %ls -d /usr/bin/as* ; ls -d /usr/bin/sa* Commence par «r», «s», «v», ou «z». %ls -d [rsvz]* Ne commence ni avec «d» ni avec «s». %ls -d /usr/bin/[!ds]* ou ls /usr/bin/[^ds]* Comporte au moins un «f». %ls -d /usr/bin/*f* Comporte au moins deux «f». %ls -d *f*f* Comporte au moins 3 caractères. %ls -d /usr/bin/???* 12

13 Comporte exactement 3 caractères. %ls -d /usr/bin/??? Comporte au plus 3 caractères. %ls -d /usr/bin/? /usr/bin/?? /usr/bin/??? Ou %ls -d /usr/bin/? ; ls -d /usr/bin/?? ; ls -d /usr/bin/??? Exercice 3 : 11. Créer dans votre répertoire racine, un sous répertoire nommé «D2_tp3». Si ce répertoire existe effacer son contenu. - Sil n existe pas, on exécute la commande «mkdir D2_tp3» pour le créer - S il existe, à partir du répertoire «D2_tp3», on exécute la commande : «rm -r *» 12. A l aide de l éditeur de texte «gedit», écrire un programme en langage «c» qui affiche 1000 fois la chaine : "Je suis la tache 1". Sauvegarder ce programme, dans le répertoire «D2_tp3», sous le nom «tache1.c». #include <stdio.h> main() { } int i= 1 ; int N=1000 while (i<=n) { } printf("je suis la tache 1") ; i=i+1 ; 13. Compiler et exécuter ce programme. Pour le fichier exécutable, on lui nne le nom «tache1». % gcc -o tache1 tache1.c 13

14 Dans ce cas le nom du fichier exécutable est «tache1». 14. Quels sont les droits d'accès pour ces deux fichiers. On exécute la commande : % ls -l» ou % ls -l tache1.c tache1» - Le premier caractère désigne le type du fichier - Les 9 caractères qui suivent désignent les droits d accès. Pour le fichier source «tache1.c» on a les droits suivants: rw-r--r-- Le propriétaire a le droit de lecture et d écriture (les trois premiers caractères rw-) Les membres du groupe ont le droit de lecture (les trois caractères qui suivent r--) Les autres utilisateurs ont le droit de lecture (les trois caractères qui suivent r--). Pour le fichier exécutable «tache1» on a les droits suivants: rwxr-xr-x Le propriétaire a le droit de lecture, d écriture et d exécution (les trois premiers caractères rwx) Les membres du groupe ont le droit de lecture et d exécution (les trois caractères qui suivent r-x) Les autres utilisateurs ont le droit de lecture et d exécution (les trois caractères qui suivent r-x). 15. En utilisant la symbole «=», modifier les droits d accès du fichier «tache1.c» de telle sorte que la lecture, l écriture et l exécution soient autorisées pour le propriétaire du fichier, les autres utilisateurs n auront. % chmod u=rwx,g=,o= tache1.c 16. Enlever, au propriétaire du fichier «tache1.c», le droit d exécution et rajouter au groupe et aux autres utilisateurs la possibilité de lire le fichier «tache1.c». % chmod u-x tache1.c ; chmod g+r tache1.c ; chmod o+r tache1.c ou % chmod u-x,g+r,o+r tache1.c ou % chmod u-x,go+r tache1.c 17. Enlever, au propriétaire du fichier «tache1.c», le droit de lecture et lui rajouter le droit d exécution, ensuite recompiler le fichier, que se passe-t-il?. 14

15 % chmod u-r,u+x tache1.c La compilation ne pourra pas avoir lieu, en effet, on ne peut pas ouvrir le fichier «tache1.c» car le propriétaire n est pas autorisé en lecture. message d erreur 18. Copier le fichier «tache1.c» «tache2.c» % cp tache1.c tache2.c Message d erreur : on ne peut pas ouvrir le fichier «tache1.c» en effet ce fichier n est autorisé en lecture. 19. A l aide de la forme octal, modifier les droits d accès du fichier exécutable «tache1» pour avoir les permissions suivantes : «rw-r--r--». Pour avoir la forme octal, on remplace, pour chaque utilisateur, les droits «r», «w» et «x» par 1 et «-» par 0. Pour chaque utilisateur on obtient un nombre écrit en base 2 ensuite on le réécrit en base 10. rw- r-- r La commande à exécuter pour avoir les permissions: % chmod 644 Que se passe t-il si on exécute le programme?? On ne peut exécuter le programme (fichier «tache1») car il n est pas autorisé en exécution Le message suivant est affiche : Bash :./tache1 : Permission non accordée 20. Enlever, au propriétaire du fichier «tache1.c», le droit d écriture ensuite modifier le contenu du fichier en remplaçant la chaine "je suis la tache1" par la chaine "tache1 \n". Que se passe-t-il?? après modification, on ne peut pas enregistrer le fichier car il n est pas autorisé en écriture. 21. Tapez la commande «ls -ld /etc». En se basant sur le résultat obtenu, expliquer ce qui se passe lorsqu on tape les commandes suivantes cd /etc Rep: on peut exécuter la commande «cd /etc», car les autres utilisateurs (other) ont le droit d exécution (le droit «x») sur ce répertoire. mkdir rep Rep: on ne peut pas créer le répertoire «rep» dans le répertoire «/etc» car ce dernier n est pas autorisé en écriture pour les autres utilisateurs (les utilisateurs «others» n ont pas le droit «w»). rm passwd Rep: on ne peut pas supprimer le fichier «passwd» car les autres utilisateurs (others) n ont pas le droit d écriture (n ont pas le droit «w») dans le répertoire «/etc». 15

16 ls -l passwd Rep: affiche les droits d accès du fichier «passwd», le nombre de liens, propriétaire,. -rw-r--r-- 1 root root :07 b /etc/passwd cd on revient sur le répertoire de connexion. cp /etc/passwd. on peut copier le fichier «/etc/passwd» dans le répertoire de connexion car les autres utilisateurs ont le droit de lecture (le droit «r») sur le fichier «passwd». Exercice 4 : 1. Créer un répertoire nommé «D21» dans le répertoire «D2_tp3». - A partir du répertoire «D2_tp3», on exécute la commande % mkdir D21 - A partir du répertoire de connexion, on exécute la commande % mkdir D2_tp3/D21 2. Déplacer le fichier «tache1» dans le répertoire «D21» - A partir du répertoire «D2_tp3», on exécute la commande %mv tache1 D21 - A partir du répertoire de connexion, on exécute la commande : %mv D2_tp3/tache1 D2_tp3/D21 3. Créer un autre sous-répertoire nommé «table» du répertoire «D2_tp3». - A partir du répertoire «D2_tp3», on exécute la commande : % mkdir table - A partir du répertoire de connexion, on exécute la commande : % mkdir D2_tp3/table 4. Copier le fichier «tache1.c» dans le répertoire «D21» et lui nner le nom «tache3.c» - A partir du répertoire «D2_tp3», on exécute la commande : % cp tache1.c table/tache3.c» - A partir du répertoire de connexion, on exécute la commande % cp D2_tp3/tache1.c D2_tp3/table/tache3.c» 5. A partir du répertoire «D2_tp3» lancer la commande «find» qui cherche tous les noms des fichiers qui commencent avec «ta». % find. -name "ta*" -type f -print % find. -name "ta*" -print La différence entre les deux: - La première n affiche pas «./table», en effet l option «-type f», n affiche que les fichiers. - Par contre, la deuxième affiche les répertoires (dans ce cas la commande affiche «./tab»). 16

17 6. Enlever, pour le propriétaire, le droit de lecture du répertoire «D21» et relancer la commande «find». %chmod u-r D21 % find. -name "ta*" -type f print En plus des fichiers trouvés et affichés, un message d erreur est affiché: find : «./D21» :permission non accordée. En effet, le propriétaire n a pas le droit d exploration du répertoire «D21» car il n est pas autorisé en lecture. 7. Relancer la commande «find» en redirigeant : - les résultats dans le fichier «res.txt» et les erreurs vers le fichier «err.txt» % find. -name "ta*" -type f > res.txt 2>err.txt - les résultats et les erreurs vers fichiers «resultats.txt» % find. -name "ta*" -type f &>resultants.txt Exercice5 : 4. Ecrire une commande qui nne le nombre de fichiers du répertoire courant % ls -al wc -l 5. Ecrire une commande qui nne le nombre de répertoires du répertoire courant Rep: % ls -al grep ^d wc -l 6. Ecrire une commande qui nne le nombre de fichiers ordinaires du répertoire courant %ls -al grep ^- wc -l 7. refaire 1 et 2 pour un répertoire nné Rep: %ls -al rep wc -l;. 8. Ecrire une commande qui permet d'afficher le nombre d utilisateurs utilisant le «bash» comme shell par défaut Rep: % grep bash /etc/passwd wc -l 9. Ecrire une commande qui permet d'afficher les utilisateurs qui utilisent le «bash» comme shell par défaut. %grep bash /etc/passwd cut -f 1 -d":" 17

18 10. Ecrire une commande qui permet d'afficher les utilisateurs qui utilisent le «bash» comme shell par défaut ainsi que leur nombre. %grep bash /etc/passwd cut -f1 -d: ; grep bash /etc/passwd wc l 11. Ecrire une commande qui permet d'afficher les utilisateurs qui commence avec «e» ou «s» et qui utilise le «bash» comme shell par défaut. % grep ^[es] /etc/passwd grep "bash$" ou % grep ^[es] /etc/passwd grep "bash" ou %grep bash /etc/passwd grep ^[es] 18

19 Correction TD/TP: Série Numéro 4 Exercice1 : En utilisant la commande find «lister» tous les fichiers qui ne sont ni des fichiers ordinaires ni des répertoires. Pour les tests, vous créez un répertoire nommé «rep», ensuite à l aide de la commande «cat» ou «touch», créez deux fichiers nommés «fiche1» et «fiche2», enfin vous créez deux liens symboliques nommés «lien_fiche1» vers le fichier «fiche1» et «lien_fiche2» vers le fichier «fiche2» find.! \( -type f -o type d \) -ls Questions complémentaires : que font les commandes suivantes? % find. \( -type f -o type d \) -ls Cette commande affiche les fichiers ordinaires et les répertoires y compris les fichiers cachés. % find. \( -type f -a type d \) -ls Cette commande n affiche rien : car un fichier ne peut pas être un fichier ordinaire et en mêm temps un répertoire % find.! \( -type f -a type d \) -ls Cette commande affiche tous les fichiers : en effet c est la négation d un fichier qui est en même temps ordinaire et répertoire. Exercice2: A l aide de la commande grep, lister tous les fichiers du répertoire /etc/x11 nt le nom - Contient le caractère x. ls /etc/x11 grep x - Commence par le caractère x. ls /etc/x11 grep ^x - Contient la lettre x ou X. ls /etc/x11/ grep "[x X]" ou ls /etc/x11/ grep "[x X]" ou ls /etc/x11/ grep "[x,x]" ou ls /etc/x11/ grep "[xx]" - Commence avec la lettre X ou x. ls /etc/x11/ grep "^[x X]" - Commence par la lettre X ou x et qui contient un ou plusieurs chiffres. Rep1 : ls /etc/x11/ grep "^[x X].*[0-9]" Rep2 : ls /etc/x11/ grep "^[x X]" grep "[0-9]" - Commence par la lettre X ou x et qui finit par un chiffre. 19

20 Rep 1 : ls /etc/x11/ grep "^[x X].*[0-9]$ " Rep 2 : ls /etc/x11/ grep "^[x X] " grep " [0-9]$ " Remarque : On peut mettre les simples quotes ou les ubles quotes mais attention leurs sens diffèrent (voir le cours) Exercice3: - Lister tous les fichiers cachés du répertoire de connexion sauf les répertoires. Remarque 1 : La commande «ls -af» liste tous les fichiers y compris les fichiers cachés en rajoutant le caractère «/» à la fin des répertoires (voir le cours) Rep 1: ls -af grep "^\." grep " [^/]$" "^\." : désigne les noms des fichiers qui commencent avec «.» N.B. on utilise «\» pour verrouiller l interprétation du métacaractère «.», dans ce cas «.» sera considéré comme un caractère et non comme un métacaractère. " [^/]$": désigne les noms des fichiers qui terminent avec /. Remarque 2 : La commande peut être appliquée pour un répertoire quelconque, dans ce cas il suffit de spécifier le chemin du répertoire. Par exemple, refaire la même question pour le répertoire «rep» qui est un sous répertoire du répertoire courant. % ls -af rep grep "^\." grep " [^/]$" Rep 2: On peut regrouper les deux «grep» % ls -af grep "^\..*[^/]$" Rep3 : On affiche seulement les fichiers qui commence avec «.», ensuite on fait «grep» pour sélectionner les fichiers qui ne sont pas des répertoires (les noms qui ne se terminent pas avec «/»). % ls -adf.* grep "[^/]$" Remarque 3: on rajoute l option «-d» pour ne pas afficher les contenus des sou répertoires. - Lister tous les fichiers ordinaires cachés du répertoire de connexion. Rep 1 : Tous d abord on liste tous les fichiers du répertoire avec la commande «ls -al» Ensuite, on sélectionne les fichiers ordinaires, ce sont les lignes qui commencent avec le caractère «-» (commande grep "^-"). L affichage de la commande «ls -l» nne les informations sur les fichiers organisées en champ séparés par des espaces. Pour éviter les confusions, on remplace les espaces par «:» (commande tr -s " " ":"), on utilise l option «-s» pour réduire les espaces successives en un seul espace. Après, on sélectionne le dernier champ, c est le champ qui contient les noms des fichiers. On it compter pour connaître le numéro du champ (ceci dépend de l affichage). Dans l environnement avec lequel je travaille la commande est «cut -f9,9 -d:» (c est le 9 ème champ). En fin, on sélectionne les noms des fichiers qui commencent avec «.» en utilisant la commande (grep "^\.") La commande est : ls -al grep "^-" tr -s " " ":" cut -f9,9 -d: grep "^\." 20

21 Rep 2 : Au lieu de sélectionner les noms des fichiers en utilisant les champs, on peut faire la sélection en comptant les colonnes (les caractères). Dans l environnement avec lequel je travaille, les noms des fichiers commencent à partir de la colonne 53 (à partir du caractère 53 y compris les espaces) La commande est : ls -al grep "^-" cut -c53- grep "^\." Exercice4 : 1. Ecrire une commande qui nne la liste des fichiers du répertoire «/etc» qui commencent avec la lettre «p» et qui sont triés par type. ls -ld /etc/p* sort 2. Ecrire une commande qui nne la liste des fichiers du répertoire «/etc» qui commencent avec la lettre «p» triés suivant le nombre de liens (ordre croissant et ordre décroissant). - Ordre croissant : ls -ld /etc/p* sort -n k2,2 ou ls -ld /etc/p* sort -k2n,2n - Ordre décroissant : ls -ld /etc/p* sort -n -r -k2,2 ou ls -ld /etc/p* sort -k2nr,2nr 3. Créer le fichier «resultat.txt» qui a le contenu suivant : Nom Résultat Omar 18 Ali 8 Fatima 15 Mohammed 18 Houcine 16 Zahra 5 Hassane 15 e. Afficher le contenu du fichier résultats sauf les deux lignes titres (les deux premières lignes). tail -n +3 f. Trier le fichier par ordre alphabétique (les deux lignes titres ne figurent pas sur la sortie). tail -n +3 resultat.txt sort g. Trier le ficher par ordre croissants suivant le champ «Résultat» (les deux lignes titres ne figurent pas sur la sortie). tail -n +3 resultat.txt sort -n -k2 ou tail -n +3 resultat.txt sort -n -k2,2 ou tail -n +3 resultat.txt sort -k2n ou tail -n +3 resultat.txt sort -k2n,2n Remarque : pour la commande «sort» on it rajouter l option «-n», sinon le trie se fait par ordre ASCII, dans ce cas on a 18 < 5 < 8. 21

22 h. Trier le ficher par ordre décroissants suivant le champ «Résultat» (Les deux lignes titres ne figurent pas sur la sortie). tail -n +3 resultat.txt sort -n -r -k2,2 ou tail -n +3 resultat.txt sort -k2nr,2nr 4. Supposons maintenant que le contenu du fichier «resultat.txt» est comme suit : Nom Résultats Omar 18:10 :12 Ali 8 :19 :0 Fatima 15 :16 :12 Mohammed 18:10:20 Houcine 16:0:10 Zahra 5:13:10 Hassane 15 :16 :12 d. Trier le fichier par ordre croissant suivant le premier résultat Rep 1 : On it unifier les séparateurs des champs, en transformant tous les séparateurs de champs en «:». - Si on suppose que les noms sont séparés des résultats par des tabulations alors on transforme les tabulations en «:» avec la commande : tr -s "$\t" ":" Pour faire le tri suivant le deuxième champ, on utilise la commande : % tail -n +3 resultat.txt tr -s "$\t" ":" sort n -k2,2 -t : - Si on suppose que les noms sont séparés des résultats par des espaces et par des tabulations alors on transforme, tous d abord, les tabulations en espaces ensuite on transforme les espaces en «:» avec la commande : tr "$\t" " " tr -s " " ":" Pour faire le tri suivant le deuxième champ, on utilise la commande : % tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" sort -n -k2,2 -t : Remarque : Dans ce cas Mohammed est affiché avant Omar e. Trier le fichier par ordre croissants suivant le premier résultat, puis suivant le troisième. % tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" sort -n k2,2 k4,4 -t : Dans ce cas «Omar» sera classé avant «Mohammed» f. Afficher avec classement % tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" sort -n k2,2 k4,4 -t : cat -n % tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" sort -n k2,2 k4,4 -t : cat -b L option «-b» identique à «-n» en ignorant les lignes vides. Exercice5 : 3. Donner la commande qui permet d afficher la liste de tous les utilisateurs. Rep 1: cut -d: -f1 /etc/passwd ou cut -d":" -f1 /etc/passwd 22

23 4. Ecrire un script qui affiche la liste de tous les utilisateurs avec leur numéro de ligne de la façon suivante : par exemple si l utilisateur «etudiant» se trouve sur la ligne 4, alors il sera affiché comme suit : etudiant:4 Rep: #!/bin/bash echo "Liste des utilisateurs dans /etc/passwd" let i=1 for params in `cut -d: -f1` echo "$params:$i " let i=i+1 ne N.B. Dans cette solution, si un nom d utilisateur est composé de deux chaines séparées par des espaces alors chaque chaine sera considérée comme un utilisateur. Refaire le script, en utilisant par exemple les commandes «tail» et «head», pour éviter ce problème. Exercice 6 1. Ecrire un script qui affiche ses paramètres dans l ordre inverse. Réponse : 1. #!/bin/bash let i=0 for param in "$@" # Voir pourquoi les ubles quotes sont nécessaires????? tab[i]=$param i=$((i+1)) ne echo "affichage dans l'ordre inverse " let n=${#tab[@]} # avec la boucle for for i in ${!tab[@]} let j=$n-$i-1 echo " ${tab[$j]}" ne # taille du tableau = nombre de paramètres # «${!tab[*]}» désigne l ensemble des indices du tableau. # avec la boucle while let i=$n while [ $i gt 0 ] echo ${tab[$i]} let i=i-1 ne 2. Créer un script qui permet de saisir une série de nombres. La saisie s arrête quand l utilisateur tape la valeur 0. Ensuite le script affiche les nombres saisis dans l ordre inverse. 23

24 Rappel : Statut de la commande «expr expression» si l'expression est valide le code retour est soit 0 ou 1: si l'expression n est pas valide, le code retour vaut une autre valeur (en général 2). Réponse : Solution algorithmique Tant que vrai Lire une valeur au clavier Si la valeur lue est un entier non nul alors on le sauvegarde dans un tableau. Si la valeur lue est un entier nul alors on quitte la boucle. Si la valeur lue n est pas un entier alors un message sera affiché demandant de saisir un entier. FinTantque On affiche les éléments du tableau dans le sens inverse. Script shell Tout d abord on teste si la valeur saisie est un entier. Pour cela, on exploite le code retour (le statut) de la commande «expr " en exécutant par exemple la commande suivante : expr $a + 0 Si son statut est < 2 alors $a est un entier. Si son statut est 2 alors $ a n est pas un entier. Ensuite pour éviter les affichages inutiles (résultats de l expression " expr " et messages d erreurs on utilise des fichiers temporaires dans lesquels on redirige les résultats et les erreurs et on les effaces à la fin du script.) #!/bin/bash let i=0 while true echo "Saisir un entier " read a expr $a + 0 &>err # les résultats et les erreurs sont redirigés dans le fichier «err» #expr $a + 0 2>err >res # les résultats sont redirigés vers «res» et les erreurs vers «err» etat=$? # On sauvegarde le statut de la dernière commande dans la varible «etat» if test $etat -lt 2 # $a est un entier if test $a -eq 0 # si l entier saisi est un 0 break # fin de la saisie. On quitte la boucle while else tab[i]=$a # on sauvegarde l entier saisi dans le tableau tab let i=i+1 fi else # la valeur saisie n est pas un entier echo " il faut saisir un entier " fi ne # on efface les fichiers temporaires rm err 24

25 #rm err res #affichage des entier dans l ordre inverse de la saisie echo "Les éléments saisis dans l'ordre inverse" let n=${#tab[@]} for i in ${!tab[@]} let j=$n-$i-1 echo "${tab[$j]}" ne Exercice 7 A l aide des structure conditionnelle «if» et «case-esac» : 3. Ecrire un script qui affiche un message indiquant les types des fichiers passés en argument au script. Rep1: Structure «if» avec la commande «test»: #!/bin/bash for fiche in "$@" # ou for fiche in "$*" ou for fiche in "$@" ou for fiche if test -d "$fiche " echo "$fiche est un répertoire" elif test -f "$ fiche " echo "$ fiche est un fichier ordinaire" elif test -L "$ fiche " echo "$ fiche est un lien symbolique" else echo "$ fiche est d un autre type "" fi ne Rep2: Structure «if» avec «[ ]» pour les test: #!/bin/bash for fiche in "$@" # ou for fiche in "$*" ou for fiche in "$@" ou for fiche if [ -d $ fiche ] echo "$ fiche est un répertoire" elif [ -f $ fiche ] echo "$ fiche est un fichier ordinaire" elif [ -L $ fiche ] echo "$ fiche est un lien symbolique" else echo "$ fiche est d un autre type "" fi ne 25

26 Rep3: Structure «case-esac» : #!bin/bash for fiche in "$@" # permet de parcourir les paramètres positionnels (les arguments du script) type_fic=`ls -ld $ fiche cut -c1` # on récupère dans la variable «type_fic» le type du fichier case $type_fic in -) echo " $fiche est un fichier ordinaire" ;; d) echo " $fiche est un répertoire" ;; l) echo " $fiche est un lien symbolique" ;; *) echo " $fiche est d un autr type" ;; esac ne 4. Ecrire un script qui affiche un message indiquant les types des fichiers du répertoire courant. Rep1 : structure «if» et la boucle «for» Au lieu d avoir les fichiers à tester comme paramètres positionnels («for fiche in "$@"» ) on it faire les tests pour les fichiers du répertoire courant, pour cela on utilise les back quotes pour substituer le résultat de la commande «ls» dans une liste qu on peut parcourir avec la commande «for» de la manière suivante : for fiche in `ls` # ou for fiche in $(ls) Les reste ne change pas: #!/bin/bash for fiche in `ls` # ou for fiche in $(ls) if test -d "$fiche" echo "$fiche est un répertoire" elif test -f "$fiche" echo "$fiche est un fichier ordinaire" elif test -L "$fiche" echo "$fiche est un lien symbolique" else echo "$fiche est d un autre type "" fi ne Rep2 : structure «case-esac» et la boucle «for» #!/bin/bash for fiche in `ls` # ou for fiche in $(ls) type_fic=`ls -ld $fiche cut -c1` case $type_fic in -) echo " $fiche est un fichier ordinaire" ;; d) echo " $fiche est un répertoire" ;; l) echo " $fiche est un lien symbolique" ;; *) echo " $fiche est d un autre type" ;; esac ne 26

27 Rep3 : structure «if» et la boucle while #!/bin/bash ls while read fiche if test -d "$fiche" echo "$fiche est un répertoire" elif test -f "$fiche" echo "$fiche est un fichier ordinaire" elif test -L "$fiche" echo "$fiche est un lien symbolique" else echo "$fiche est d un autre type "" fi ne Rep4 : structure «case-esac» et la boucle while #!/bin/bash ls while read fiche type_fic="ls -ld $fiche cut -c1" case $type_fic in -) echo " $fiche est un fichier ordinaire" ;; d) echo " $fiche est un répertoire" ;; l) echo " $fiche est un lien symbolique" ;; *) echo " $fiche est d un autre type" ;; esac ne 27

28 Correction TD/TP: Série Numéro 5 Exercice 1 : On reprend les nnées de l exercice 4 (série TD-TP N 4), question 4 : Supposons que le contenu du fichier «resultat.txt» est comme suit : Nom Résultats Omar 18:10 :12 Ali 8 :19 :0 Fatima 15 :16 :12 Mohammed 18:10:20 Houcine 16:0:10 Zahra 5:13:10 Hassane 15 :16 :12 Ecrire un script shell qui permet de rajouter dans le fichier «resultat.txt» une nouvelle colonne qui contient la somme des trois résultats. Réponse On extrait uniquement les champs résultats et on les sauvegarde dans un fichier nommée «res_plus» et on transforme les «:» avec le symbole «+». Pour cela : - Tout d abord, on uniformise les séparateurs de champs en transformant tous les espaces et tabulation en «:» en utilisant la commande : tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" cut -f2,3,4 -d: tr ":" "+" > res_plus - Ensuite on sélectionne uniquement les résultats (les champs 2, 3 et 4) en utilisant la commande : cut -f2,3,4 -d: - En fin en transforme les «:» en«+» en on sauvegarde le résultat dans un fichier nommé «res_plus» en utilisant la commande tr ":" "+" > res_plus Finalement la commande est : tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" cut -f2,3,4 -d: tr ":" "+" > res_plus On sauvegarde le nombre de lignes du fichier «res_plus» dans la variable «nb» en utilisant la substitution des commandes avec les back quotes. let nb=`wc -l < res_plus` En fin on itère sur les lignes du fichier «res_plus» où chaque ligne du fichier est de la forme «res1+res2+res3» avec res1, res2 et res3 sont des entiers. Pour évaluer cette expression, il suffit d appeler la commande «let». Pour calculer la somme «s» de la ligne «i» du fichier «res_plus» on exécute la commande suivante et on substitue (on utilise les back quotes) le résultat de la commande dans la variable «s» de la manière suivante : let s=`tail -n +$i < res_plus head -1 ` 28

29 Pour sauvegarder le résultat de l évaluation dans un fichier «res_somme» on utilise la commande : echo "$s" >> res_somme Le scripte pour parcourir tous les lignes du fichier «res_somme» let i=1 while [ $i -le $nb ] let s=`tail -n +$i < res_plus head -1 ` echo "$s" >> res_somme let i=i+1 ne Pour accoler les somme suavegardées dans le fichier «res_somme» vans le fichier «resultat.txt» - Dans le fichier «res» on sauvegarde les nnées du fichier «resultat» sauf les deux premières lignes, à l aide de la commande : tail -n +3 resultat.txt > res - On utilse la commande «paste» pour accoler les lignes des fichiers «res» et le fichier «res_somme» ensuite on sauvegarde les résultats dans le fichier «res_final» à l aide de la commande : paste res res_somme > res_final - Pour visualiser on utilise la commande «cat» cat res_final - On efface les fichiers temporaires : rm res_plus res res_somme Le script complet : #!/bin/bash tail -n +3 resultat.txt tr "$\t" " " tr -s " " ":" cut -f2,3,4 -d: tr ":" "+" > res_plus let i=1 let nb=`wc -l < res_plus` while [ $i -le $nb ] let s=`tail -n +$i < res_plus head -1 ` echo "$s" >> res_somme let i=i+1 ne tail -n +3 resultat.txt > res paste res res_somme > res_final cat res_final rm res_plus res res_somme Exercice 2 : Ecrire un script shell qui permet de calculer le PGCD de deux entiers positifs passés en argument au script (paramètres positionnels) en utilisant l algorithme d Euclide défini de la façon suivante : 29

30 Soit 0 b a Si b=0 pgcd(a,b) = a Sinon pgcd(a,b)=pgcd(b,r) où r est la division euclidienne entre a et b : a = bq + r avec 0 r<b Le script contient : - Une fonction qui test que les arguments sont des entiers positifs - Une fonction qui calcule le PGCD de manière itérative - Une fonction qui calcule le PGCD de manière récursive. Réponse : #!/bin/bash test_numerique() # cette fonction test si les deux arguments sont des entiers. { for nb in $* «itérer sur l ensemble d arguments» x=expr $nb + 0` 2>err # en cas d erreur, le message d erreur est redirigé dans le fichier «err» etat=$? # on sauvegarde le statut de la commande «expr» dans la variable «etat». if test $etat -gt 1 # Si l argument nb n est pas entier, alors sortir de la fonction avec le statut 2 return 2 fi if test $nb -lt 0 # Si l argument n best négative, alors sortir de la fonction avec le statut 1 return 1 fi ne return 0 } # Fonction calculant le pgcd en utilisant des boucles : pgcd itérative pgcd_iter() { local x=$1 local y=$2 while test $y -ne 0 # while [ $y -ne 0 ] # pgcd(x, y)=pgcd(y, x mod y) local z=$x x=$y y=`expr $z % $y` ne # Affichage du résultat echo "Le PGCD($1,$2) est : $x" return 0 } 30

31 # Fonction calculant le pgcd en utilisant la récursivité : pgcd récursif pgcd_rec() # pgcd($1,$2) { # test d arrêt if test $2 -eq 0 # si $2 égal 0 alors pgcd est égal $1 et sort de la fonction avec un statut égal à 1 echo "$1" return 0 fi # On appliqué la récursivité: pgcd(x, y)=pgcd(y, x mod y) # pgcd_rec ( $2, `expr $1 % $2` ) } pgcd_rec $2 `expr $1 % $2` # Programme principal # Tests de la numéricité des arguments test_numerique $1 $2 etat=$? # on sauvegarde le statut de la fonction «test_numerique» dans la variable «etat» case $etat in 0) # Arguments valides nb1=$1 nb2=$2 if test $1 -le $2 nb1=$2 nb2=$1 fi echo "Fonction itérative: " `pgcd_iter $nb1 $nb2` echo "Fonction récursive: Le PGCD($1,$2) est : " `pgcd_rec $nb1 $nb2` ;; 1) # Argument negative echo "L'un des deux paramètres $1 ou $2 est un nombre négatif" ;; 2) # Argument non valide echo "L'un des deux paramètres $1 ou $2 n'est pas un nombre entier" ;; esac 31

TP1 - Prise en main de l environnement Unix.

TP1 - Prise en main de l environnement Unix. Mise à niveau UNIX Licence Bio-informatique TP1 - Prise en main de l environnement Unix. Les sujets de TP sont disponibles à l adresse http://www.pps.jussieu.fr/~tasson/enseignement/bioinfo/ Les documents

Plus en détail

TP 1 Prise en main de l environnement Unix

TP 1 Prise en main de l environnement Unix Introduction aux systèmes d exploitation (IS1) TP 1 Prise en main de l environnement Unix Le but de ce premier TP est de commencer à vous familiariser avec l environnement Unix. 1 Ouverture de session

Plus en détail

Outils pour la pratique

Outils pour la pratique Cinquième partie Outils pour la pratique 121 CHAPITRE 1 Les bases des séances de TP Avant de lire cettre section, il est suggéré de relire vos notes de cours se rapportant au système d exploitation Unix.

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

«Astrophysique et instrumentations associées» Cours UNIX. 2006 Benoît Semelin

«Astrophysique et instrumentations associées» Cours UNIX. 2006 Benoît Semelin M2 «Astrophysique et instrumentations associées» Cours UNIX 2006 Benoît Semelin Les OS OS = Operating System : Programme de base qui assure la gestion du matériel (clavier, écran, disque dur...), du système

Plus en détail

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre 2010 http://www.loligrub.be

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre 2010 http://www.loligrub.be Linux et le Shell Francois BAYART Atelier du samedi 20 Novembre 2010 http://www.loligrub.be 1 Le «système» 2 FHS http://fr.wikipedia.org/wiki/filesystem_hierarchy_standard Filesystem Hierarchy Standard

Plus en détail

Aide-Mémoire unix. 9 février 2009

Aide-Mémoire unix. 9 février 2009 Aide-Mémoire unix Nicolas Kielbasiewicz 9 février 2009 Le système d exploitation unix est de plus en plus présent aujourd hui. Comme tous les projets Open Source, on le trouve sous différentes formes :

Plus en détail

TD séances n 3 et n 4 Répertoires et Fichiers sous Unix

TD séances n 3 et n 4 Répertoires et Fichiers sous Unix Ce TP est destiné à vous familiariser avec les fichiers sous l'environnement UNIX. Fortement axé sur la pratique, il aborde la création, la manipulation et la suppression des répertoires et fichiers. 1

Plus en détail

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Unix/Linux I. 1 ere année DUT. Université marne la vallée Unix/Linux I 1 ere année DUT Université marne la vallée 1 Introduction 2 Fonctions et spécifité d Unix Architecture 3 4 5 Fichier Unix Arborescence de fichiers Quelques commandes sur les fichiers Chemins

Plus en détail

Bon ben voilà c est fait!

Bon ben voilà c est fait! Bon ben voilà c est fait! Au programme : - Exploration de l arborescence et informations systèmes - Action sur les dossiers et fichiers - Gestion des autorisations - Conversion pdf en text - Connexion

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

C.M. 1 & 2 : Prise en main de Linux

C.M. 1 & 2 : Prise en main de Linux Grégory Bonnet gregory.bonnet@unicaen.fr GREYC Université Caen Basse Normandie Diaporama original : Jean-Philippe Métivier - Boris Lesner But de cet enseignement 1 - Apprendre à manipuler un système Unix/Linux

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Cours Programmation Système

Cours Programmation Système Cours Programmation Système Filière SMI Semestre S6 El Mostafa DAOUDI Département de Mathématiques et d Informatique, Faculté des Sciences Université Mohammed Premier Oujda m.daoudi@fso.ump.ma Février

Plus en détail

TP1 : Initiation à l algorithmique (1 séance)

TP1 : Initiation à l algorithmique (1 séance) Université de Versailles Vanessa Vitse IUT de Vélizy - Algorithmique 2006/2007 TP1 : Initiation à l algorithmique (1 séance) 1 Prise en main de l environnement Unix : rappels et compléments Le but de la

Plus en détail

Introduction au Système d Exploitation Unix/Linux

Introduction au Système d Exploitation Unix/Linux 1 iere partie: Système de Gestion de Fichier B. Jacob IC2/LIUM 17 septembre 2013 Plan 1 Notions de fichier 2 Notions de répertoire 3 Organisation des répertoires 4 Identification d un fichier dans l arborescence

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

Plus en détail

PLAN Introduction à UNIX Patrick Fuchs Dynamique des Structures et Interactions des Macromolécules Biologiques Université Paris Diderot patrick.fuchs@univ-paris-diderot.fr 2 PLAN Système d'exploitation

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

SERVEUR DE SAUVEGARDE POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé

SERVEUR DE SAUVEGARDE POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé SERVEUR DE SAUVEGARDE POUR BCDI3 par G.Haberer, A.Peuch, P.Saadé Table des matières 1. Introduction........................................................................ 2 1.1. Objectif....................................................................

Plus en détail

Les Boitiers de Vote Electroniques (Clickers)

Les Boitiers de Vote Electroniques (Clickers) Parcours des écoles d'ingénieurs Polytech (PeiP1) Les Boitiers de Vote Electroniques (Clickers) Pour dynamiser et rendre interactif un cours en amphi Qu est ce qu un Boitier de Vote? Une télécommande comme

Plus en détail

Année 2007. Cours Unix-Shell. par. Karam ALLALI. Ecole Spéciale d Informatique

Année 2007. Cours Unix-Shell. par. Karam ALLALI. Ecole Spéciale d Informatique Année 2007 Cours Unix-Shell par Karam ALLALI Ecole Spéciale d Informatique Table des matières 1 Introduction. 5 1.1 Historique.................................... 6 1.2 Système d exploitation.............................

Plus en détail

Projet Administration Réseaux

Projet Administration Réseaux EL KHATIT Zouhair, L3 ASR N : 20072486 Projet Administration Réseaux Thème : SFTP & SCPOnly I- SFTP (Secure File Transfer Protocol) : Introduction: Le SFTP permet de transférer des fichiers par une connexion

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

Mon premier rpm. http://alexandre-mesle.com 7 juin 2010. 1 Avant de commencer 2 1.1 RPM... 2 1.2 URPMI... 2 1.3 RPMBUILD... 2

Mon premier rpm. http://alexandre-mesle.com 7 juin 2010. 1 Avant de commencer 2 1.1 RPM... 2 1.2 URPMI... 2 1.3 RPMBUILD... 2 Mon premier rpm http://alexandre-mesle.com 7 juin 2010 Table des matières 1 Avant de commencer 2 1.1 RPM....................................................... 2 1.2 URPMI.....................................................

Plus en détail

Introduction aux Systèmes et aux Réseaux

Introduction aux Systèmes et aux Réseaux Introduction aux Systèmes et aux Réseaux Cours 2 : Language de commandes, Scripts Shell D après un cours de Julien Forget (Univ Lille1) Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@univ-lyon1.fr

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Introduction à Linux (pour le HPC) «Linux 101» Présentation : http://goo.gl/bvfyn

Introduction à Linux (pour le HPC) «Linux 101» Présentation : http://goo.gl/bvfyn Introduction à Linux (pour le HPC) «Linux 101» Présentation : http://goo.gl/bvfyn maxime.boissonneault@calculquebec.ca U. Laval - Mars 2013 1 2 Plan de la présentation 1.Accéder à une grappe 2.Fichiers

Plus en détail

TP, première séquence d exercices.

TP, première séquence d exercices. TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la

Plus en détail

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille PRESENTATION RESSOURCES Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille 1) Introduction, Objectifs et Intentions Le BTS SN (Systèmes Numériques) intègre la formation

Plus en détail

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL Au cours de ce TP, vous allez installer un serveur de courrier sur un réseau local. Les étapes par lesquelles vous allez passer sont les suivantes

Plus en détail

1 Démarrage de Marionnet

1 Démarrage de Marionnet Institut Galilée Administration Système Année 2011-2012 INFO 2ème année Master Info 1 Master Image & Réseau 1 T.P. 1 Administration Système Le logiciel Marionnet (www.marionnet.org) offre la possibilité

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

INF 321 : mémento de la syntaxe de Java

INF 321 : mémento de la syntaxe de Java INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement Pharmed gestion de pharmacie hospitalière Installation / déploiement Version 1.0 du 23/05/2006 Date Auteur Version Modification 23/05/06 Pierre CARLIER 1.0 14/06/06 Matthieu Laborie Table des matières

Plus en détail

TP 4 de familiarisation avec Unix

TP 4 de familiarisation avec Unix TP 4 de familiarisation avec Unix Réseau Filtres (suite) Variables Scripts Vincent Berry - vberry@lirmm.fr IMPORTANT : la prise de notes est une pratique très importante et pourtant négligée, elle est

Plus en détail

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

Plus en détail

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014 Mise en place d un service FTP sous Linux Bouron Dimitri 20/04/2014 Ce document sert de démonstration concise pour l installation, la configuration, la sécurisation, d un serveur FTP sous Linux utilisant

Plus en détail

Environnements informatiques

Environnements informatiques Environnements informatiques Premiers pas sous Linux (seconde partie) 26 septembre 2008 blansche@dpt-info.u-strasbg.fr 1 /12 Administration sous Linux 2 /12 Démarrage Démarrage de Linux Niveaux de démarrage

Plus en détail

Polycopié Cours Système d Exploitation I. Programme : Filière SMI S3

Polycopié Cours Système d Exploitation I. Programme : Filière SMI S3 UNIVERISTE MOHAMMED PREMIER Faculté des Sciences d Oujda Oujda - Maroc Polycopié Cours Système d Exploitation I Programme : Filière SMI S3 Pr. El Mostafa DAOUDI Département de Mathématiques et d Informatique

Plus en détail

Réaliser un inventaire Documentation utilisateur

Réaliser un inventaire Documentation utilisateur Référence : 11662 Version N : 6 Créé le : 29 Janvier 2014 Créé par : Bruno RICHOUX Téléphone : 0811 65 60 02 Sommaire 1. Conventions... 3 2. Introduction... 4 3. Principes généraux... 5 3.1. Depuis les

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

Sauvegarde sous MAC avec serveur Samba

Sauvegarde sous MAC avec serveur Samba Sauvegarde sous MAC avec serveur Samba Possédant un serveur SAMBA sous Debian, je me suis intéressé à la sauvegarde des données d'un mac sous OSX. Malgré mes recherches je n'ai pas trouvé de logiciels

Plus en détail

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Système de Gestion Informatisée des. Exploitations Agricoles Irriguées avec Contrôle de l Eau

Système de Gestion Informatisée des. Exploitations Agricoles Irriguées avec Contrôle de l Eau MINISTERE DE L AGRICULTURE DE L ELEVAGE ET DE LA PECHE DIRECTION DU GENIE RURAL PROJET DE RENFORCEMENT DES CAPACITES NATIONALES DE SUIVI DES RESSOURCES EN EAU AXE SUR LA GESTION DE L EAU AGRICOLE Système

Plus en détail

PROXY SQUID-SQARD. procédure

PROXY SQUID-SQARD. procédure PROXY SQUID-SQARD procédure Tableau d évolution Version Date Description Rédacteur Approbateur 0.0 08/12/2014 Ecriture du document Thierry MARTINS 1.0 05/02/2015 1 ère version Thierry MARTINS Guide de

Plus en détail

Quelques éléments de compilation en C et makefiles

Quelques éléments de compilation en C et makefiles Quelques éléments de compilation en C et makefiles Guillaume Feuillade 1 Compiler un programme C Le principe de la compilation consiste à passer d un ensemble de fichiers de code à un programme exécutable

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

Premiers pas en Linux

Premiers pas en Linux Premiers pas en Linux 1 Bref historique Linux Système d'exploitation créé en 1991. Par Linus Torvalds un étudiant nlandais. Développé et amélioré par des centaines de spécialistes dans le monde. Particularité

Plus en détail

Le prototype de la fonction main()

Le prototype de la fonction main() Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme

Plus en détail

Installation d ORACLE 10g sous Debian Etch

Installation d ORACLE 10g sous Debian Etch Installation d ORACLE 10g sous Debian Etch Rédacteur : TEHERY Julien Page n 2/6 1.1 Pré-requis Comme pour chaque installation de logiciel, il y a lieu d installer certains paquets nécessaires. Et Oracle

Plus en détail

Serveur de sauvegardes incrémental

Serveur de sauvegardes incrémental Serveur de sauvegardes incrémental Pierre.Lafaye-de-Micheaux@upmf-grenoble.Fr ddelseny@yahoo.fr Dans cet article, nous allons vous apprendre comment mettre en place un serveur de sauvegardes incrémental

Plus en détail

Programmation système I Les entrées/sorties

Programmation système I Les entrées/sorties Programmation système I Les entrées/sorties DUT 1 re année Université de Marne La vallée Les entrées-sorties : E/O Entrées/Sorties : Opérations d échanges d informations dans un système informatique. Les

Plus en détail

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??

Algorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/?? Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement

Plus en détail

TD3: tableaux avancées, première classe et chaînes

TD3: tableaux avancées, première classe et chaînes TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

Première partie. Qu est-ce qu un script?

Première partie. Qu est-ce qu un script? Unix : shell scripts ASR1 - Systèmes d exploitation Première partie Semestre 1, année 2012-2013 Département d informatique HCM IUT Bordeaux 1 Qu est-ce qu un script? 1 Dialogue en ligne de commande 2 Interprète

Plus en détail

Guide d'installation de la base de données ORACLE 10g (10.2.0.1) pour linux FEDORA CORE 4.

Guide d'installation de la base de données ORACLE 10g (10.2.0.1) pour linux FEDORA CORE 4. Guide d'installation de la base de données ORACLE 10g (10.2.0.1) pour linux FEDORA CORE 4. 1 - Quelques informations à propos de ce guide Ce guide décrit comment installer la base de données Oracle 10g

Plus en détail

Introduction...3. Objectif...3. Manipulations...3. Gestion des utilisateurs et des groupes...4. Introduction...4. Les fichiers de base...

Introduction...3. Objectif...3. Manipulations...3. Gestion des utilisateurs et des groupes...4. Introduction...4. Les fichiers de base... Système d'exploitation Sommaire Introduction...3 Objectif...3 Manipulations...3 Gestion des utilisateurs et des groupes...4 Introduction...4 Les fichiers de base...4 Quelques commandes d'administration...5

Plus en détail

(Langage de commandes) Les commandes sont données par l'utilisateur grâce au clavier, à partir d'une "invite" ou "prompt" (par exemple "c:\>" )

(Langage de commandes) Les commandes sont données par l'utilisateur grâce au clavier, à partir d'une invite ou prompt (par exemple c:\> ) Système d Exploitation d : MS-DOS MicroSoft Disk Operating System C est un système d exploitation développé par la société Microsoft. Il offre une interface textuelle basée sur un ensemble de commandes.

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Exercice sur les Dockers

Exercice sur les Dockers Exercice sur les Dockers Les parties composant les Dockers: 1 docker daemon: est un démon qui gère les dockers (les conteneurs LXC) qui tournent sur la machine hôte 2 docker CLI: une série de commandes

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Chapitre 10 : Logiciels

Chapitre 10 : Logiciels Chapitre 10 : Logiciels Installation de logiciels dans Linux IUT Lannion - Systèmes - 1e année - Nerzic - 2014-15 1 10.1 Installation manuelle Cette partie explique comment on compile et installe un logiciel

Plus en détail

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Tutoriel Création d une source Cydia et compilation des packages sous Linux Tutoriel Création d une source Cydia et compilation des packages sous Linux 1. Pré-requis 1. Quelques connaissances sous Linux 2. Avoir à disposition un Serveur FTP pour héberger votre source 3. Un thème

Plus en détail

Document d accompagnement pour l utilisation du Cartable en ligne Lycée des Métiers Fernand LÉGER 2013/2014

Document d accompagnement pour l utilisation du Cartable en ligne Lycée des Métiers Fernand LÉGER 2013/2014 Document d accompagnement pour l utilisation du Cartable en ligne Lycée des Métiers Fernand LÉGER 2013/2014 Le Cartable en ligne est un Environnement numérique de travail (ENT) dont la vocation est de

Plus en détail

1 CRÉER UN TABLEAU. IADE Outils et Méthodes de gestion de l information

1 CRÉER UN TABLEAU. IADE Outils et Méthodes de gestion de l information TP Numéro 2 CRÉER ET MANIPULER DES TABLEAUX (Mise en forme, insertion, suppression, tri...) 1 CRÉER UN TABLEAU 1.1 Présentation Pour organiser et présenter des données sous forme d un tableau, Word propose

Plus en détail

1 - Se connecter au Cartable en ligne

1 - Se connecter au Cartable en ligne Le Cartable en ligne est un Environnement numérique de travail (ENT) dont la vocation est de proposer un ensemble de services en ligne, personnalisés et sécurisés, accessibles aux élèves et aux professeurs,

Plus en détail

Reproductibilité des expériences de l article "Analyse et réduction du chemin critique dans l exécution d une application"

Reproductibilité des expériences de l article Analyse et réduction du chemin critique dans l exécution d une application Reproductibilité des expériences de l article "Analyse et réduction du chemin critique dans l exécution d une application" Katarzyna Porada and David Parello and Bernard Goossens Univ. Perpignan Via Domitia,

Plus en détail

Cours Unix 1. Présentation d UNIX. Plan du cours 1

Cours Unix 1. Présentation d UNIX. Plan du cours 1 Cours Unix 1 Michel Mauny Plan du cours 1 1. Présentation d Unix (a) Historique (b) Fonctionnalités (c) Unix aujourd hui 2. Connexion et déconnexion ETGL D après http://www.francenet.fr/~perrot/cours unix.html

Plus en détail

GdsCompta. Logiciel de comptabilité générale

GdsCompta. Logiciel de comptabilité générale GdsCompta Logiciel de comptabilité générale CARACTERISTIQUES Logiciel sous Windows Fonctionne sous Windows XP, Vista, 7 et 8 Multi-dossier De la saisie des écritures au bilan, une comptabilité complète.

Plus en détail

Affectation standard Affectation modifiée (exemple)

Affectation standard Affectation modifiée (exemple) 1 sur 5 13/02/2005 11:44 Les fonctions qui vont être abordées vont vous apprendre à : comprendre l'arborescence Poste de travail, disque Répertoire ou dossier Chemin absolu, relatif utiliser l'explorateur

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

Séance 0 : Linux + Octave : le compromis idéal

Séance 0 : Linux + Octave : le compromis idéal Séance 0 : Linux + Octave : le compromis idéal Introduction Linux est un système d'exploitation multi-tâches et multi-utilisateurs, basé sur la gratuité et développé par une communauté de passionnés. C'est

Plus en détail

1. Structure d'un programme FORTRAN 95

1. Structure d'un programme FORTRAN 95 FORTRAN se caractérise par la nécessité de compiler les scripts, c'est à dire transformer du texte en binaire.(transforme un fichier de texte en.f95 en un executable (non lisible par un éditeur) en.exe.)

Plus en détail

Cours de Systèmes d Exploitation

Cours de Systèmes d Exploitation Licence d informatique Synchronisation et Communication inter-processus Hafid Bourzoufi Université de Valenciennes - ISTV Introduction Les processus concurrents s exécutant dans le système d exploitation

Plus en détail

Les arbres binaires de recherche

Les arbres binaires de recherche Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond

Plus en détail

Cours d initiation à la programmation en C++ Johann Cuenin

Cours d initiation à la programmation en C++ Johann Cuenin Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................

Plus en détail

EXCEL PERFECTIONNEMENT SERVICE INFORMATIQUE. Version 1.0 30/11/05

EXCEL PERFECTIONNEMENT SERVICE INFORMATIQUE. Version 1.0 30/11/05 EXCEL PERFECTIONNEMENT Version 1.0 30/11/05 SERVICE INFORMATIQUE TABLE DES MATIERES 1RAPPELS...3 1.1RACCOURCIS CLAVIER & SOURIS... 3 1.2NAVIGUER DANS UNE FEUILLE ET UN CLASSEUR... 3 1.3PERSONNALISER LA

Plus en détail

PROCEDURE D'INSTALLATION OPENREPORTS

PROCEDURE D'INSTALLATION OPENREPORTS PROCEDURE D'INSTALLATION OPENREPORTS Table des matières Prérequis...2 1 Installation linux...2 2 Installation JAVA...3 2.1 Installation de la jdk...3 2.2 Configuration de l'environnement...3 3 Installation

Plus en détail

1 Lecture de fichiers

1 Lecture de fichiers Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit

Plus en détail

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min) TP n 2 : Installation et administration du serveur ProFTP Objectifs du TP Comprendre le fonctionnement du protocole FTP Installation et compilation d un paquet source Configuration, lancement et administration

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Programmation avec Xcas ou Python

Programmation avec Xcas ou Python Programmation avec Xcas ou Python G. Aldon - J. Germoni - J.-M. Mény IREM de Lyon Mars 2012 GA, JG, JMM (IREM de Lyon) programmer xcas python Mars 2012 1 / 20 Éditeur Xcas Environnement Le texte d un programme

Plus en détail