Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1449 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  problème fichier en PERL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème fichier en PERL

n°984453
jumpuperon​e
Posté le 17-02-2005 à 09:07:12  profilanswer
 

Bonjour à vous les codeurs!!!
 
Voilà je suis dans le Perl depuis environ... 5 jours et je m'en sort pas!!!! :fou:  
 
Comme les autres... j'ai un problème!!!
 
En gros voici ce que fait le programme:
Automatisation des sauvegardes des matériels réseaux... Pour se faire je parcour un fichier (on l'appelera equip.txt) qui contient tous les matériels réseaux.
A chaque équipement lu je recherche via SNMP son objectID.
Selon cet ObjectId je parcour un deuxième fichier (on l'appelera oid.txt) qui contient l'ensemble des OID que j'ai dans mon réseau.
Lorsqu'un materiel détient un OID et qu'il n'est pas encore dans le fichier oid.txt, il faut l'ajouter. Et c à ce niveau là tout le problème!!!  
En effet j'arrive bien à rajouter une ligne dans mon fichier pour ajouter l'OID manquant, mais lorsque que le programme rerencontre ce même équipement, il ne prend pas en compte la modification que je viens d'apporter au fichier et me rajoute une autre ligne avec le même oid...  :??:  
 
 
 
Pour ceux qui n'auraient rien compris (perso je comprend même moi j'ai du mal  :pt1cable: )je voudrait savoir s'il y a une commande en Perl pour enregistrer un fichier modifié dans un programme. Pour pouvoir le réutiliser par la suite dans ce même programme...  
 
j'ai essayé: les fichiers temporaires, la copie de fichier, les différents mode de lecture et écriture... Rien y fait!!!
 
On est deux têtes depuis deux jours et on trouve pas alors si quelqu'un sait qu'il ne se gêne pas!!!
 
Merci d'avance, déjà de m'avoir lu...
 
 
Jumpuperone qui se bouffe les neurones!!!

mood
Publicité
Posté le 17-02-2005 à 09:07:12  profilanswer
 

n°984576
couak
Posté le 17-02-2005 à 10:25:04  profilanswer
 

rien compris !

n°984694
pospos
Posté le 17-02-2005 à 11:26:47  profilanswer
 

il faut réinitialiser le pointeur de lecture dans le fichier pour qu'il recommence à le parcourir depuis le debut:
 
seek(FILE, 0, 0);
 
dans tous les cas, plutot que de parcourir le fichier à chaque fois et d'ajouter chaque nouveau oid, le mieux serait de charger le fichier une bonne fois dans une hash, de faire toutes les recherches/modifs dans cette hash, puis d'ecraser le fichier avec les donnée de la hash à la toute fin.

n°984767
jumpuperon​e
Posté le 17-02-2005 à 12:32:21  profilanswer
 

Merci bien pospos!!!
En effet ta deuxième solution est celle que je viens de mettre en place et ça marche... Enfin presque!
J'arrive plus à écrire dans mon fichier mais là je pense je suis à la fin!!
Encore merci mec d'avoir répondu et compris...
 
Tchô

n°984850
pospos
Posté le 17-02-2005 à 13:59:29  profilanswer
 

tu ouvre ton fichier en lecture seule pour el charger dans ta hash, puis tu le ferme. ensuite à la fin tu le réouvre en ecriture (pour ecraser son contenu) et tu y ecrit le contenu de ta hash, formatté comme il faut


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  problème fichier en PERL

 

Sujets relatifs
problème avec fonction FOREACHchemin de fichier pour une lecture.
Récupérer un nom de fichier Et...Insérer des données dans un fichier XML
Problème de Procedure avec liste chainée et fichierIncorporer des fichier à son exe
probleme d'insertion dans Mysql avec easyphpProbleme avec request.getRequestDispatcher()
PROBLEME AVEC " mms:// " 
Plus de sujets relatifs à : problème fichier en PERL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR