Bonjour,
j´ai un tp a rendre , mais le probleme c´est que j´ai du mal a saisir le but de ce tp , si quelqu´un pouve m´aider.
Merci d´Avance
Sujet
Le but de ce projet est de recréer une arborescence par étudiant et de pouvoir y mettre des fichiers qui correspondent à chaque étudiant par année scolaire (pour cette année 2011-2012 et sous ce répertoire tous les répertoires des étudiants).
Le script et tous les fichiers annexes devront se situer sur un répertoir
e projet. Toutes les sorties devront se trouver dans un fichier de log appelé rep.log
Dans ce fichier, on notera deux types de messages :
Les messages normaux de lancement de chaque partie détaillée en-dessous avec la date et l’heure inscrite
Les messages d’anomalies qu’on repérera de façon particulière (couleur, encadrement, etc).
Ce projet comportera plusieurs parties :.
1 Au début du shell, on vérifie à chaque fois si l’arborescence existe sinon création d’une arborescence particulière :
a. Création du répertoire correspondant à l’année en cours que l’on testera : on considère que l’année scolaire va de septembre à août. S’il existe déjà, on ne fait rien.
b. Création de sous-répertoires pan, dan, lp, lpalt, bascule, etc à partir d’un fichier rep.txt où seront mis les noms des répertoires à créer. On vérifiera que les répertoires ne sont pas déjà créés.
c. On doit pouvoir ajouter un répertoire dans rep.txt après coup et relancer le traitement pour que le répertoire se crée.
d. Affichage d’un message de création des répertoires.
2. Possibilité de créer des arborescences à partir de fichiers se trouvant sous l’arborescence initiale (par exemple 2011-2012) :
a. Création de sous-répertoires : On regarde si des fichiers pan.txt , dan.txt, etc. (correspondant au fichier rep.txt) existent. S’ils existent alors on crée des répertoires sous l’arborescence correspondante par rapport au premier champ et deuxième champ (nom et prénom) séparés par des points virgules pour créer un répertoire avec nom_prenom. Par exemple, si on a un fichier pan.txt avec 2 noms et prénoms :
DUPONT;Pierre MARTIN;Paul
Alors on créera sous le répertoire pan, 2 répertoires : DUPONT_Pierre et MARTIN_Paul.
Ceci est un exemple. Vous pouvez gérer la contrainte des minuscules et des majuscules comme vous l’entendez. Vous indiquerez comment vous avez gérer ce problème dans votre rapport (voir le dernier paragraphe).
On créera aussi une entrée dans le fichier rep.log avec le fichier traité ainsi que tous les répertoires créés.
b. Gestion des anomalies :
Les lignes blanches qui peuvent se trouver dans le fichier.
Les noms, prénoms doivent être des caractères et séparées par un point virgule.
On vérifie que le répertoire n’existe pas déjà.
c. Les anomalies doivent se retrouver dans le fichier rep.log sous le répertoire projet.
d. A la fin du traitement, on donnera le nombre de répertoires créés ainsi que le nombre d’anomalie par répertoire (à l’écran et dans le fichier rep.log aussi).
e. Chaque fichier traité (pan.txt, lp.txt, etc) sera redéfini en pan_yymmdd-hh.old où yymmdd-hh sera la date du jour et l’heure et cela afin de ne pas traiter deux fois le même fichier. Par exemple, pan.txt sera renommé en pan_111005-10.old après le traitement.
3. Basculement de fichiers dans les bons répertoires
a. A partir du répertoire bascule, on lit tous les fichiers qui s’y trouvent. Ces fichiers doivent commencer par prenom.nom@ (séparé donc par un point). Pour chaque fichier, on trouve le répertoire correspondant à son nom, prénom dans l’arborescence et on le déplace (pas de copie) dans le répertoire correspondant. Si on ne trouve pas de répertoire correspondant, on crée une ligne dans le fichier d’anomalie rep.log et on affiche un message d’erreur à l’écran. Si c’est un fichier zippé, alors on le dézippera dans le répertoire correspondant.
b. Gestion des anomalies si :
Les fichiers doivent commencer par des caractères séparés par un point.
On ne trouve pas le répertoire correspondant au fichier (Attention, inversion du nom, prénom !).
Ces anomalies doivent se retrouver dans le fichier rep.log en détail.
c. A la fin du traitement, on affiche le nombre de fichiers traités, le nombre de fichiers basculés, le nombre d’anomalies, le nombre de fichiers non traités et on créera aussi une ligne dans le fichier rep.log
d. Attention à l’inversion du nom, prénom entre le répertoire et le nom de fichier. La gestion des minuscules et des majuscules sera aussi à prendre en compte. Concernant cette dernière contrainte, vous la gérerez comme vous l’entendez.
4. Possibilité de lire les n dernières lignes du fichier rep.log. n devra être saisi par l’utilisateur.
5. Possibilité de supprimer les n premières lignes du fichier rep.log. n devra être saisi par l’utilisateur.
6. Traitement des fichiers qui ont été basculés A partir d’un répertoire à saisir (pan, par exemple), on va lire tous les fichiers pdf avec Adobe un par un. Lorsque l’utilisateur ferme Adobe, on lui demandera si le fichier est
traité. Si la réponse est oui, alors le fichier sera copié dans un répertoire fin (à créer si inexistant) sinon on ne fait rien. Ensuite, on demande si l’utilisateur veut continuer : si oui, alors on lit le fichier suivant en pdf, sinon on arrête le traitement.
Partager