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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH] Lire une certaine partie d'un fichier texte

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[BATCH] Lire une certaine partie d'un fichier texte

n°2133564
Alwaysin
Posté le 28-03-2012 à 22:31:05  profilanswer
 

Bonjour,
 
J'aurais besoin de votre aide pour un script en batch un peu (beaucoup) plus compliqué que ce que j'ai l'habitude de faire !
 
Je vous explique le contexte : j'ai un serveur DHCP sous W2003E, qui produit des logs dans C:\Windows\system32\dhcp
Les logs sont de type DhcpSrvLog-Xxx.log, où Xxx équivaut au jour, par exemple Lun pour lundi, Mar pour mercredi,...
 
(1) Il me faut donc dans un premier déterminer la date du jour précédent, pour aller vérifier dans le fichier de log de la veille. Je sais obtenir la date d'aujourd'hui, mais pas celle de la veille, je suppose que c'est possible, mais comment ?
 
(2) Ensuite, je dois ouvrir ce fichier et commencer à lire à partir d'une certaine ligne (la 30ème il me semble). Je sais ouvrir le fichier, mais pas à partir d'une certaine ligne...
 
(3) Puis, je voudrais savoir si, pour chaque ligne, c'est possible d'extraire chaque "partie" de celle-ci, à partir du moment où on connait un délimiteur ? Ici, par exemple :
01;28/03/2012;Démarré
-> Les éléments sont séparés par ";", et je souhaite récupérer essentiellement le premier paramètre, qui correspond à un ID d’évènement.
 
Tout cela est trop pour moi et me paraît bien compliqué !
 
Si vous pouvez m'aider, je vous en serez très reconnaissant  
 
Merci d'avance.

mood
Publicité
Posté le 28-03-2012 à 22:31:05  profilanswer
 

n°2135363
Xspawn_Lpc
Posté le 08-04-2012 à 20:48:49  profilanswer
 

(1) => manipulation de date (même simpliste) oublie le batch => vbs (ou powershell)
 
(2) faisable mais galère => faut lire ligne par ligne en incrémentant une variable et s'arreter lorsqu'elle atteint 30.
nb : again plus facile en vbs
 
(3) boucle for avec token=; ou un split en vbs
 
bon courage


---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
n°2135364
Alwaysin
Posté le 08-04-2012 à 20:51:05  profilanswer
 

Merci beaucoup pour tes indications !
 
Je vais me pencher sur le VBS alors... :)

n°2135374
gilou
Modérateur
Modzilla
Posté le 08-04-2012 à 22:19:13  profilanswer
 

Pour ce genre de manip, il y a pas mieux que Perl.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2135375
Alwaysin
Posté le 08-04-2012 à 22:23:43  profilanswer
 

Alors autant VBS je pense pouvoir me débrouiller puisqu'on en fait en cours, autant Perl m'est complètement inconnu ^^
 
Comme c'est pour bientôt que j'en ai besoin en plus, je n'ai pas le temps de me plonger dans l'apprentissage de ce langage, mais merci beaucoup pour le conseil en tout cas :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH] Lire une certaine partie d'un fichier texte

 

Sujets relatifs
[Resolu] Word 2010, ouvrir un fichier .doc et l'enregistrer en .pdfAllocation fichier en entrée / sortie
Lancer un programme en tache de fond Via un BatchProbleme pour compiler un fichier java
couleur de cellule tableau automatique fichier odt phpcomment au mieux effectuer une recherche dans un fichier XML?
Découpe fichier Word toute les X pagesHelp comparaison de deux fichier perl
[Batch]Mise à jour de l'heure à chaque ouverture de session 
Plus de sujets relatifs à : [BATCH] Lire une certaine partie d'un fichier texte


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