OVH Community, votre nouvel espace communautaire.

Shell Le defi du 21eme siecle


Tibre44
27/12/2006, 18h11
Je l'avais prit ainsi... mais dans le doute...

visualight
27/12/2006, 18h08
Non ... de l'humour

Tibre44
27/12/2006, 18h02
Je ne suis pas indépendant si c'est là la question

visualight
27/12/2006, 17h31
Citation Envoyé par Tibre44
C'est un appel d'offre ? J'ai trouvé ?? J'ai gagné ???
Formule publicitaire: Mettez un Tibre dans votre moteur

Tibre44
27/12/2006, 17h27
C'est un appel d'offre ? J'ai trouvé ?? J'ai gagné ???

visualight
27/12/2006, 17h10
Citation Envoyé par amadeus
Qu'est-ce que çà fait là alors ?
On doit déjà leur apprendre à bosser en sortant de l'école on va pas commencer à les former avant...
Mouarf !
Mozart est sourd ... pas aveugle ni imbécile

amadeus
27/12/2006, 13h06
Citation Envoyé par fred036
"objectifs... serveur de l'iut.. fonctions.. " ca pue le devoir ca
Qu'est-ce que çà fait là alors ?
On doit déjà leur apprendre à bosser en sortant de l'école on va pas commencer à les former avant...

fred036
27/12/2006, 10h43
"objectifs... serveur de l'iut.. fonctions.. " ca pue le devoir ca

Yggdrasil
26/12/2006, 22h06
Citation Envoyé par amadeus
Rien compris
Tu me rassure ... je commencais à m'inquiéter ...

amadeus
26/12/2006, 21h50
Rien compris, elle est où la question ?

pop
26/12/2006, 18h47
1.Objectifs

Mettre en place une application de gestion de fichiers et de versions simplifiée. Elle servira notamment à :

*

comparer des contenus de répertoire et sous-répertoires ;
*

maintenir une cohérence entre 2 répertoires ;
*

procurer une interface utilisateur « agréable ».


Cette application compare des fichiers par nom, taille, date ou MD5 (1). Elle propose une interface à l'utilisateur pour la comparaison et la gestion d'une arborescence. Elle utilise des fichiers html pour la sauvegarde d'informations sur son exécution. Pour une cohérence des fichiers dans une arborescence, on élimine les doublons (fichiers strictement identiques). On souhaite également traiter le cas des fichiers de même nom, mais de version différentes (taille et/ou date et/ou hashage différent), cela amène à grouper des fichiers dans un répertoire commun, à les renommer pour prendre en compte ces versions.
2.Fonctionnement

1.

contraintes techniques

*

utilise l'interpréteur bash (mettre #!/bin/bash sur toutes les 1ères lignes de vos scripts) ;
*

doit fonctionner sur pluton (serveur de l'Iut, adresse IP : 147.194.176.19, accès en SSH) sans modifications (attention, mon répertoire de test sera différent du votre, soyez le plus flexible possible) ;

2.

fonctions


recherche et classement de doublons dans une arborescence

Lorsque l'utilisateur lance cette commande, on lui propose :

1.

la recherche et la suppression de doublons dans une arborescence ;
2.

la comparaison et l'équilibrage de 2 arborescences ;
3.

la recherche et la suppression de répertoires vide dans une arborescence;
4.

l'affichage du fichier html de suivi de l'application.

Selon ses choix, s'il choisit :
1.

la recherche et la suppression de doublons dans une arborescence

*

on lui demande le répertoire de départ des recherches ;
*

on parcourt l'ensemble des fichiers et répertoires à partir de ce point ;
*

pour savoir si 2 fichiers sont strictement identiques, on teste leurs hashages MD5 ;
*

à la fin du parcours :
o

on propose à l'utilisateur les paquets de fichiers strictement identiques pour qu'il n'en garde qu'un parmi les n trouvés (ou tous). Il a donc une liste avec des numéros et entre le numéro de celui qu'il garde.
o

on lui propose ensuite le traitement des fichiers qui ont le même nom, des MD5 ou des dates différents. Pour ces fichiers, il faut gérer les versions. On doit donc les trier par date (s'ils ont des dates identiques, on regardera l'heure si elles sont identiques, on en met un en « principal » de manière arbitraire -taille plus grande par exemple). Il faut également les ranger dans un seul répertoire. On lui propose donc la liste de tous les fichiers dans ce cas (par paquet de même nom). Il choisit le répertoire parmi ceux qui contiennent au moins un de ces fichiers. On déplace ensuite tous les fichiers dans ce répertoire, on les classe par date en ajoutant une extension du type : « _autoversion_1_date_heure_ » dans le nom du fichier (attention à conserver l'extension originale du fichier : .txt, .doc, .sh, .mpeg4, ...). Le fichier « principal » (fichier le moins agé) est inchangé. On pourra donc trouver dans un répertoire des fichiers du type :

rapport.doc

rapport3.doc

rapport_autoversion_1_20.11.2006_22:00:21

rapport_autoversion_2_13.11.2006_22:00:21

Attention, il faut conserver la cohérence des fichiers « autoversion », donc tester leur existence avant d'en rajouter et mettre à jour les numéros de versions si besoin.

*

options (hors notation) : proposer un mode automatique (sans intervention d'un utilisateur), qui ne garde qu'un fichier dans une série identique et qui met les numéros de versions dans le 1er répertoire trouvé pour les fichiers de même noms.


2.

la comparaison et l'équilibrage de 2 arborescences

De fonctionnement identique au précédent, cette commande compare les fichiers de 2 arborescences. Elle propose la suppression de doublons MD5 (liste) et le regroupement de versions (liste pour les répertoires, « autoversion »).

3.

la recherche et la suppression de répertoires vide dans une arborescence

Les déplacements et suppressions de fichiers peut amener certains répertoires à être vide, proposer une liste de ces répertoires.

4.

l'affichage du fichier html de suivi de l'application

On propose à l'utilisateur un fichier html qui regroupe toutes les infos d'exécution du script (répertoires parcourus, temps de traitement, choix dans les menus, actions, ...) avec les liens sur les répertoires en question. Remplir ce fichier au fur et à mesure (ranger par date).


Il vous faudra, pour accélérer les traitements, conserver les MD5, les tailles et les dates des fichiers de votre arborescence.
3.Notation

Le projet doit être livré en état de fonctionner sans modifications. Chaque point de 2) est important pour avoir la note maximale, des ajouts non demandés ne seront évalués que si l'application fonctionne pour tous ces points. Toutes les sources devront être commentées (fonctionnement global, détail des fonctions, remarques, ...). Une en-tête doit être présente dans chaque fichier, du type :


#Iut de Provence, dept. Informatique

#projet de script : cohérence d'arborescence

#date, noms et prénoms

#dates et versions, modifications


Idem pour les sources des fichiers html et leur affichage.