Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/10/2011, 09h57   #1
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
Par défaut tp arborescence par etudiant

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.
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 03
Vieux 26/10/2011, 10h08   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 538
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 538
Points : 7 754
Points : 7 754
comme tout TP son but : aucun à part de te faire manipuler.

pour le reste tu te démerdes on est pas payé 78€/jours pour faire tes devoirs sur ce site.

salut.

1.A suffit de faire un test et action selon le resultat du test, au chargement du profile utilisateur

1.B suffit d'une boucle de lecture du fichier

1.C simple gestion d'affichage pour éviter le message d'erreur inutile

1.D rien à dire là

pour le reste tout en découle et si tu réussis à comprendre cette étape la suite en découle.
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/10/2011, 10h11   #3
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
je n´ai pas demande qu´on fasse mon tp juste qu´on m´explique
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 26/10/2011, 10h12   #4
Membre actif
 
Femme
Apprenti/ Dev C++
Inscription : décembre 2009
Messages : 105
Détails du profil
Informations personnelles :
Sexe : Femme

Informations professionnelles :
Activité : Apprenti/ Dev C++
Secteur : Finance

Informations forums :
Inscription : décembre 2009
Messages : 105
Points : 175
Points : 175
Explique nous plutôt ce qui t’échappe, et on pourra peut être t'apporter une solution.
Malinaka est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 26/10/2011, 10h16   #5
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
Alors deja pour le 1.a on m´a explique qu´il fallait recuperer l´annee scolaire 2011-2012 et creer un repertoir avec ce nom , mais je comprends pas le fait de recuper l´annee scolaire , faut il juste prendre la date ou alors des fichiers
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 26/10/2011, 10h20   #6
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 538
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 538
Points : 7 754
Points : 7 754
tu veux qu'on t'explique quoi ?

y'a rien à expliquer tu as une suite de chose à faire parfaitement décrite, tu les fais 1 par 1 c'est tout.

2.a lecture sequetielle de fichier (comme dans l'exercice 1) et ça créer les repertoires attendus seule différence lire la bonne colonne


2.b. ça normalement on devrait pas te le dire tu devrais le faire par défaut

2.c. idem

2.d. suffit de compter au fur et à mesure et d'afficher la variable en fin de traitement

2.e c'est juste un horodatage de fichier avec le formalisme demandé

3.a même principe tjrs en lecture sequentielle, pour chaque fichier 1 action

3.b. de meme que dans le deux : c'est un comportement à avoir par défaut

3.c. exactement la meme chose que dans l'exercice 2

3.d. pareil que 3.b c'est à gerer systématiquement sans qu'on te le demande

4. Possibilité de lire les n dernières lignes du fichier rep.log. n devra être saisi par l’utilisateur.

difficile d être plus clair

5. Possibilité de supprimer les n premières lignes du fichier rep.log. n devra être saisi par l’utilisateur.

idem

6. la encore une simple exercice autour du read pour la saisie "utilisateur"

y'a pas à expliquer puisqu'il n'y a rien à comprendre, c'est juste du "à faire tel que décrit", y'a pas vraiment de chose à comprendre, il n'y a que des instructions "à suivre"
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 10h25   #7
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 538
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 538
Points : 7 754
Points : 7 754
1.a :

tu récupère l'année en cours, ça te permet d'en déduire le nom de l'année scolaire donc "2011-2012" et tu créer le repértoire de ce nom si il n'existe pas déjà...

où tu vois qu'on te parles de fichier dans 1.a ???

Citation:
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.

Code :
1
2
3
4
5
date_annee=.................. # on récupère en YYYY
mise_en_forme # converti en YYYY-YYYY
if [ ! -d date_annee_scolaire ] ; then 
..... # creation du repertoire & controle d'erreur 
fi
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 10h26   #8
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
oui , ben je nuis pas ingenieur non plus comme vous , excusez moi que j´ai un peu de mal a comprendre;
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 26/10/2011, 10h28   #9
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 538
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 538
Points : 7 754
Points : 7 754
Citation:
Envoyé par emytom0308 Voir le message
oui , ben je nuis pas ingenieur non plus comme vous , excusez moi que j´ai un peu de mal a comprendre;
c'est pas une question de comprendre le système ni le shell mais le français.
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 10h30   #10
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
oui j´avoue je dois avoir du mal avec le francais , oui mais l´annee scolaire logiquement c´est toujours la meme;
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 10h54   #11
Membre chevronné
 
Avatar de f-k-z
 
Homme K-Z. F.
Ingénieur sécurité
Inscription : juin 2006
Messages : 393
Détails du profil
Informations personnelles :
Nom : Homme K-Z. F.
Âge : 27
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur sécurité
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juin 2006
Messages : 393
Points : 675
Points : 675
C'est pas que tu dois, c'est que tu as...

Prenons le cas de l'année scolaire actuelle.
Soit tu la notes: 2011-2012
Soit tu la notes: 2011
Pour cela tu vois cela avec ton professeur qui te répondra

Tu récuppères la date actuelle si elle est est comprise entre le 1/09/N et 31/12/N alors tu est en année scolaire N (ou N-(N+1))
Si elle est entre 1/1/N et 31/8/N alors tu es en année (N-1) ( (N-1)-N)
Je vois pas le problème en fait :/

++
__________________
GNU/Linux c'est une question de VI ou de MORE.
http://www.goodbye-microsoft.com
"Linux is user friendly, its just very selective of its friends*", m'enfou, je suis son pote :p

Un post vous est utile ou est constructif, ayez le réflexe du +1 pour le contributeur ( C'est gratuit et ça donne l'impression d'être utile :p )
Le tag et la ne sont pas fait que pour le décor, pensez-y !
R.I.P. F-k-z 13/06/2006 - 12/10/2011
*Linux est convivial, il est juste très sélectifs pour ses amis.
f-k-z est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 11h00   #12
 
Homme
etudiant
Inscription : octobre 2011
Messages : 24
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : etudiant

Informations forums :
Inscription : octobre 2011
Messages : 24
Points : -4
Points : -4
cela fait 3 semaines que j´ai commence les scripts shell alors je suis pas encore au point
emytom0308 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 11h16   #13
Membre chevronné
 
Avatar de f-k-z
 
Homme K-Z. F.
Ingénieur sécurité
Inscription : juin 2006
Messages : 393
Détails du profil
Informations personnelles :
Nom : Homme K-Z. F.
Âge : 27
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur sécurité
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juin 2006
Messages : 393
Points : 675
Points : 675
Yop,
Là on sait même pas d'où vient ton problème... Si c'est une commande qui te pose soucis, une erreur, non compréhension etcetc...
si tu veux vraiment de l'aide trois possibilités:
1) tu nous montres que tu bosses, tu viens avec des questions précisses et nous on a juste besoin de faire une petite correction/remarque/aide...
2) tu me fais un don paypal de 300€/H que je passe dessus pour le faire à ta place (C'est le prix que je coûte à mon patron, fin bon une fois qu'on retire toutes les charges et tout et tout, me reste plus grand chose :'( )
3) tu vas voir d'autres kikoulols sur d'autres forum dont je tairais le nom, mais auxquels tout le monde va penser :]]]]]]]]

++
__________________
GNU/Linux c'est une question de VI ou de MORE.
http://www.goodbye-microsoft.com
"Linux is user friendly, its just very selective of its friends*", m'enfou, je suis son pote :p

Un post vous est utile ou est constructif, ayez le réflexe du +1 pour le contributeur ( C'est gratuit et ça donne l'impression d'être utile :p )
Le tag et la ne sont pas fait que pour le décor, pensez-y !
R.I.P. F-k-z 13/06/2006 - 12/10/2011
*Linux est convivial, il est juste très sélectifs pour ses amis.
f-k-z est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h47.


 
 
 
 
Partenaires

Hébergement Web