Question
Trouvez des données
- Sheyks
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
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)
Et quel est la bonne approche? x)
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 11 ans 9 mois #17676
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Trouvez des données
Sheyks écrit:

Sheyks écrit:
Non un seul, n'oublie pas tes choix de specsEffectivement, y'a pas mal de défaut :/.
Sheyks écrit:
Émettre des objets, PUIS construire le rapport à partir de la collection d'objets.Et quel est la bonne approche? x)
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 11 ans 9 mois #17687
par Laurent Dardenne
Tutoriels PowerShell
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
[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.044 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Trouvez des données