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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Boucle foreach

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Boucle foreach

n°2324394
kingernd67
Posté le 19-11-2018 à 09:13:52  profilanswer
 

Bonjour,
 
j'ai un petit problème avec un script. je souhaite scanner des fichiers moins de 1 jour et cela fonctionne très bien quand il n'y en a qu'un seul... Et dès qu'il y en a plusieurs les chemins sont stockés dans la même variable et lorsque que je fais un get-content $lavariableconcernés me met une erreur ce qui est normal car il contient plusieurs chemin... Quelqu'un saurait-il comment placer ces chemins dans plusieurs variables ?  
 
ps: je sais qu'il y'a le foreach mais je sais pas trop comment l'intégrer ...  
 

Code :
  1. $Date=(Get-Date).Adddays(-6)
  2. $path='C:\Users\Informatique\Desktop\LOG\*.txt'
  3. $H=Dir $Path |   Group-Object -Property {$_.LastWriteTime -ge $date} -AsHashTable -AsString
  4. $oldOfs,$ofs=$ofs,' , '
  5. if ($H.Contains('False'))
  6. {
  7.   Write-Warning "Les Fichiers de plus de 1 jour sont déjà analysés"
  8.  
  9. }
  10. if ($H.Contains('True'))
  11. {
  12.   Write-Warning "Fichier de moins de 24 heures"
  13.   "$($H.True) "
  14. }
  15. $ofs=$oldOfs

mood
Publicité
Posté le 19-11-2018 à 09:13:52  profilanswer
 

n°2324460
Je@nb
In ze cloud
Posté le 19-11-2018 à 21:01:22  profilanswer
 

Euh ton but c'est d'avoir tous les fichiers txt de moins de un jour ?
Quel intérêt de faire des groupements et autres trucs dégueulasses ?
 

Code :
  1. $fichiers = @(Get-ChildItem -Path "C:\Users\Informatique\Desktop\LOG\*.txt" |? { $_.LastWriteTime -ge (get-date).AddDays(-1) })
  2. foreach ($fichier in $fichiers)
  3. {
  4. #jefais ce que je veux avec $fichier
  5. }


 
ou autre selon ce que tu veux faire

n°2324470
kingernd67
Posté le 20-11-2018 à 09:32:27  profilanswer
 

Je@nb a écrit :

Euh ton but c'est d'avoir tous les fichiers txt de moins de un jour ?
Quel intérêt de faire des groupements et autres trucs dégueulasses ?
 

Code :
  1. $fichiers = @(Get-ChildItem -Path "C:\Users\Informatique\Desktop\LOG\*.txt" |? { $_.LastWriteTime -ge (get-date).AddDays(-1) })
  2. foreach ($fichier in $fichiers)
  3. {
  4. #jefais ce que je veux avec $fichier
  5. }


 
ou autre selon ce que tu veux faire


 
 
Yep merci ! J'ai trouvé une solution entre temps ! En tout cas merci d'avoir pris ton temps d'y répondre :)


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

  Boucle foreach

 

Sujets relatifs
Boucle FOR : ") etait inattendu"[resolu]imbrication de foreach
probleme foreach phpProblème de logique (boucle infinie)
Boucle taille fichiers et lancementCréation de boucle pour un affichage de deux tables
Formulaire créé en javascript limité à 90 "lignes"Problème avec boucle foreach powershell
problème avec une boucle foreach[PHP] boucle foreach imbriquée dans un For
Plus de sujets relatifs à : Boucle foreach


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR