Question Trouvez des données

Plus d'informations
il y a 11 ans 9 mois #17674 par Sheyks
Réponse de Sheyks sur le sujet Re:Trouvez des données
Effectivement, y'a pas mal de défaut :/.
Et quel est la bonne approche? x)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 9 mois #17676 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Trouvez des données
Sheyks écrit:

Effectivement, y'a pas mal de défaut :/.

Non un seul, n'oublie pas tes choix de specs B)
Sheyks écrit:

Et quel est la bonne approche? x)

Émettre des objets, PUIS construire le rapport à partir de la collection d'objets.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 9 mois #17687 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Trouvez des données
Une version basé objet, utilisant le jeux de test précédent :
[code:1]
$chemin= \"C:\temp\\"
Function New-HtmlAvironResultParsing{
param(
[Parameter(Mandatory=$True,position=0)]
$Path,
[Parameter(Mandatory=$True,position=1)]
$isMatchNet,
[Parameter(Mandatory=$True,position=2)]
$isMatchSite,
[Parameter(Mandatory=$True,position=3)]
$isNoMatch
)
#Les paramétres liés définissent aussi les propriétés de l'objet
$O=New-Object PSObject -Property $PSBoundParameters

$O.PsObject.TypeNames.Insert(0,\"HtmlAvironResultParsing\"«»)
$O

}# New-HtmlAvironResultParsing

$Liste=Foreach ($File in Get-ChildItem \"$chemin\f*.txt\" -Recurse| Where {-not $_.PSIsContainer })
{
$Result=New-HtmlAvironResultParsing $File.FullName $false $false $false
Foreach ($Line in $File|Get-Content)
{
[regex]::Matches($Line,'(\.net|site 16)')|
Foreach {
if (($Result.isMatchNet -eq $false) -and ($_.Value -eq '.net') )
{ $Result.isMatchNet=$true }
if (($Result.isMatchSite -eq $false)-and ($_.Value -eq 'site 16'))
{ $Result.isMatchSite=$true }
}
if ($Result.isMatchNet -and $Result.isMatchSite )
{ break }
}#foreach Line
$Result.isNoMatch=-not ($Result.isMatchNet -or $Result.isMatchSite)
Write-Output $Result
}#foreach File

$Liste
# Path isMatchNet isMatchSite isNoMatch
# ----


# C:\temp\f1.txt False True False
# C:\temp\f2.txt False False True
# C:\temp\f3.txt True False False
# C:\temp\f4.txt True True False
# C:\temp\f5.txt False True False
# C:\temp\f6.txt True True False
# C:\temp\f7.txt False True False
[/code:1]<br><br>Message édité par: Laurent Dardenne, à: 20/06/14 13:03

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.051 secondes
Propulsé par Kunena