====== PowerShell ====== ===== Les bases ===== Selon moi, la première notion à connaître est la manipulation des fichiers CSV. Lisons donc un fichier CSV et faisons une boucle dessus pour manipuler chaque ligne. Partons de l'exemple suivant. Samaccountname,Mail abc123,abc123@domain.com def123,def123@domain.com ghi123,ghi123@test.com Samaccountname,Mail abc123,abc123@domain.com def123,def123@domain.com ghi123,ghi123@test.com Import-Csv -Path input.csv | foreach { # On sauvegarde l'objet courant dans une variable dédiée $currentLine = $_ # exemple de récupération de colonne $mail = $currentLine.Mail # on fait un test # on ajoute une propriété à la ligne courante avec le résultat du test if ($mail -match "domain.com$") { $currentLine | Add-Member -MemberType NoteProperty -Name "domainCheck" -Value "valid" } else { $currentLine | Add-Member -MemberType NoteProperty -Name "domainCheck" -Value "invalid" } # on retourne la ligne courante avec la nouvelle colonne $currentLine } | # export result line by line to CSV # -NoTypeInformation empêche le fichier exporté de contenir une ligne de metadata Export-Csv -Path preCheck.csv -NoTypeInformation Ce script exporte ce genre de fichier CSV avec une nouvelle colonne. "Samaccountname","Mail","domainCheck" "abc123","abc123@domain.com","valid" "def123","def123@domain.com","valid" "ghi123","ghi123@test.com","invalid" "Samaccountname","Mail","domainCheck" "abc123","abc123@domain.com","valid" "def123","def123@domain.com","valid" "ghi123","ghi123@test.com","invalid"