Question
Création tableau 2 dimensions depuis des logs
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 14 ans 5 mois #10432
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Création tableau 2 dimensions depuis des logs
Bonsoir,
Pourquoi ne pas passer par un 'hashtable' ?
Voir l'article parru aujourd'hui sur le blog \"Scripting Guys\" .
Aussi, si sur chaque ligne, les informations sont séparées par un espace, pourquoi ne pas découper les informations ? (cf. Méthode 'split' de la classe 'string' ).
Enfin, il est dommage que nous n'ayons pas plus d'informations sur le sujet, notamment comme le demandait Laurent : D'où proviennent les informations ? Comment sont-elles collectées ?
@+
Matthew BETTON
Pourquoi ne pas passer par un 'hashtable' ?
Voir l'article parru aujourd'hui sur le blog \"Scripting Guys\" .
Aussi, si sur chaque ligne, les informations sont séparées par un espace, pourquoi ne pas découper les informations ? (cf. Méthode 'split' de la classe 'string' ).
Enfin, il est dommage que nous n'ayons pas plus d'informations sur le sujet, notamment comme le demandait Laurent : D'où proviennent les informations ? Comment sont-elles collectées ?
@+
Matthew BETTON
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 14 ans 5 mois #10434
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Création tableau 2 dimensions depuis des logs
Bonjour,
Désolé pour l'histoire du hashtable... Ce n'est pas forcément le plus adapté.
Un exemple de contenue pour le log :
[code:1]
2/3/2011 15:18:25.125 1228
2/4/2011 16:22:51.164 1221
2/5/2011 05:31:15.148 16
2/6/2011 08:05:27.101 64
4/6/2011 16:15:08.120 5[/code:1]
Une solution :
[code:1]
$Tab = @()
$log = Get-Content D:\Matthew\test.log
foreach($line in $log){
$values = $line.split(\" \"«»)
$objInfos = New-Object PSObject -Property @{
\"Date\" = [DateTime]\"$($Values[0]) $($Values[1])\"
\"EventID\" = $Values[2]
}
$Tab += $objInfos
}
Write-Host \"`nAffiche toutes les informations : \"
$Tab
Write-Host \"`nAffiche la première ligne : \"
$Tab[0]
Write-Host \"`nAffiche la date contenue dans la seconde ligne : \"
($Tab[1].Date).ToString()
Write-Host \"`nAffiche l'Event ID contenu dans la quatrième ligne : \"
$Tab[3].EventID[/code:1]
La sortie une fois le code exécuté :
[code:1]Affiche toutes les informations :
EventID Date
----
1228 03/02/2011 15:18:25
1221 04/02/2011 16:22:51
16 05/02/2011 05:31:15
64 06/02/2011 08:05:27
5 06/04/2011 16:15:08
Affiche la première ligne :
1228 03/02/2011 15:18:25
Affiche la date contenue dans la seconde ligne :
04/02/2011 16:22:51
Affiche l'Event ID contenu dans la quatrième ligne :
64
[/code:1]
@ +
Matthew
Désolé pour l'histoire du hashtable... Ce n'est pas forcément le plus adapté.
Un exemple de contenue pour le log :
[code:1]
2/3/2011 15:18:25.125 1228
2/4/2011 16:22:51.164 1221
2/5/2011 05:31:15.148 16
2/6/2011 08:05:27.101 64
4/6/2011 16:15:08.120 5[/code:1]
Une solution :
[code:1]
$Tab = @()
$log = Get-Content D:\Matthew\test.log
foreach($line in $log){
$values = $line.split(\" \"«»)
$objInfos = New-Object PSObject -Property @{
\"Date\" = [DateTime]\"$($Values[0]) $($Values[1])\"
\"EventID\" = $Values[2]
}
$Tab += $objInfos
}
Write-Host \"`nAffiche toutes les informations : \"
$Tab
Write-Host \"`nAffiche la première ligne : \"
$Tab[0]
Write-Host \"`nAffiche la date contenue dans la seconde ligne : \"
($Tab[1].Date).ToString()
Write-Host \"`nAffiche l'Event ID contenu dans la quatrième ligne : \"
$Tab[3].EventID[/code:1]
La sortie une fois le code exécuté :
[code:1]Affiche toutes les informations :
EventID Date
----
1228 03/02/2011 15:18:25
1221 04/02/2011 16:22:51
16 05/02/2011 05:31:15
64 06/02/2011 08:05:27
5 06/04/2011 16:15:08
Affiche la première ligne :
1228 03/02/2011 15:18:25
Affiche la date contenue dans la seconde ligne :
04/02/2011 16:22:51
Affiche l'Event ID contenu dans la quatrième ligne :
64
[/code:1]
@ +
Matthew
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.038 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Création tableau 2 dimensions depuis des logs