Question
Problème avec Export-CSV
- LIEFOOGHE
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 0
il y a 17 ans 4 mois #3171
par LIEFOOGHE
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Problème avec Export-CSV a été créé par LIEFOOGHE
Bonjour à tous,
Je rencontre quelque problème avec la méthode Export-CSV.
Voici mon script :
[code:1] function Get-UserInfo
{
$objDomaine = [ADSI]''
$objRecherche = New-Object `
System.DirectoryServices.DirectorySearcher($objDomaine)
$objRecherche.PageSize = 1000
$requete = '(&(sAMAccountType=805306368) (name=*))'
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
foreach ($comptes in $objRecherche.FindAll())
{
$path = $comptes.Path
$user = [ADSI]\"$path\"
$user
}
}
Get-UserInfo | Select -Property cn,displayname,userPrincipalName,Mail,telephoneNumber,sAMAccountName | Export-Csv c:\test.csv[/code:1]
Si je n'exporte pas dans un fichier csv, mes attributs s'affichent correctement, par contre quand j'exporte en CSV, c'est le type qui s'affiche à la place de la valeur de ma variable :
System.DirectoryServices.PropertyValueCollection
J'ai réussi avec la méthode Get-QADUser de Quest mais le problème ce que je n'arrive pas à executer ce script dans une tache AT :
[code:1]Get-QADUser -SizeLimit 0 -SearchRoot 'DC=COMMUN,DC=AD,DC=SNCF,DC=FR' |
Select-Object -property \"name\",\"displayname\",\"userPrincipalName\",\"Mail\",\"telephoneNumber\",\"sAMAccountName\" |
Export-Csv c:\test.csv[/code:1]
Voila pourquoi j'ai créé une function Get-UserInfo
Je rencontre quelque problème avec la méthode Export-CSV.
Voici mon script :
[code:1] function Get-UserInfo
{
$objDomaine = [ADSI]''
$objRecherche = New-Object `
System.DirectoryServices.DirectorySearcher($objDomaine)
$objRecherche.PageSize = 1000
$requete = '(&(sAMAccountType=805306368) (name=*))'
$objRecherche.Filter=$requete
$comptes = $objRecherche.FindAll()
foreach ($comptes in $objRecherche.FindAll())
{
$path = $comptes.Path
$user = [ADSI]\"$path\"
$user
}
}
Get-UserInfo | Select -Property cn,displayname,userPrincipalName,Mail,telephoneNumber,sAMAccountName | Export-Csv c:\test.csv[/code:1]
Si je n'exporte pas dans un fichier csv, mes attributs s'affichent correctement, par contre quand j'exporte en CSV, c'est le type qui s'affiche à la place de la valeur de ma variable :
System.DirectoryServices.PropertyValueCollection
J'ai réussi avec la méthode Get-QADUser de Quest mais le problème ce que je n'arrive pas à executer ce script dans une tache AT :
[code:1]Get-QADUser -SizeLimit 0 -SearchRoot 'DC=COMMUN,DC=AD,DC=SNCF,DC=FR' |
Select-Object -property \"name\",\"displayname\",\"userPrincipalName\",\"Mail\",\"telephoneNumber\",\"sAMAccountName\" |
Export-Csv c:\test.csv[/code:1]
Voila pourquoi j'ai créé une function Get-UserInfo
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Connexion ou Créer un compte pour participer à la conversation.
- Grégory
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 49
- Remerciements reçus 0
il y a 17 ans 4 mois #3175
par Grégory
Réponse de Grégory sur le sujet Re:Problème avec Export-CSV
J'ai eu le même problème la solution que j'ai trouvé est de passer par export-clixml
au lieu de faire directement un export en csv
tu exportes en xml
puis tu importes ton xml que tu exportes en csv
et ça marche sans soucis
[code:1]Get-UserInfo | Select -Property cn,displayname,userPrincipalName,Mail,telephoneNumber,sAMAccountName | Export-clixml c:\test.xml
import-clixml c:\test.xml|export-csv c:\test.csv
[/code:1]<br><br>Message édité par: Nostra, à: 4/11/08 13:40
au lieu de faire directement un export en csv
tu exportes en xml
puis tu importes ton xml que tu exportes en csv
et ça marche sans soucis
[code:1]Get-UserInfo | Select -Property cn,displayname,userPrincipalName,Mail,telephoneNumber,sAMAccountName | Export-clixml c:\test.xml
import-clixml c:\test.xml|export-csv c:\test.csv
[/code:1]<br><br>Message édité par: Nostra, à: 4/11/08 13:40
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 17 ans 4 mois #3178
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Problème avec Export-CSV
Le cmdlet Select-Objet supprime les méthodes de l'objet source et l'affichage se fait avec la méthode ToString() qui par défaut renvoi le nom du type de l'objet.
Ensuite le type de l'objet selectionné devient PSObject ce qui invalide peut être le formatage par défaut des champs, cf. les fichiers .ps1xml.
Mais je n'ai pas trop le temps de creuser plus que ça l'origine de ce pb.
Essai avec des expressions personnalisées comme indiqué [url=http://stackoverflow.com/questions/207166/can-i-transform-object-properties-during-output-with-select-objectexport-csv
]ici[/url]
Ensuite le type de l'objet selectionné devient PSObject ce qui invalide peut être le formatage par défaut des champs, cf. les fichiers .ps1xml.
Mais je n'ai pas trop le temps de creuser plus que ça l'origine de ce pb.
Essai avec des expressions personnalisées comme indiqué [url=http://stackoverflow.com/questions/207166/can-i-transform-object-properties-during-output-with-select-objectexport-csv
]ici[/url]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- LIEFOOGHE
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 0
il y a 17 ans 4 mois #3181
par LIEFOOGHE
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Réponse de LIEFOOGHE sur le sujet Re:Problème avec Export-CSV
La méthode avec l'exporte importe XML fonctionne mais elle est très longue.
En faite avec le second script le résultat est bon :
[code:1]Get-QADUser -SizeLimit 0 -SearchRoot 'DC=COMMUN,DC=AD,DC=SNCF,DC=FR' |
Select-Object -property \"name\",\"displayname\",\"userPrincipalName\",\"Mail\",\"telephoneNumber\",\"sAMAccountName\" |
Export-Csv c:\test.csv[/code:1]
Mais le problème c'est que ne peux pas utiliser la cmdlet Get-QADUser directement depuis powerShell :
Mon but est d'exécuter tous les soirs un script batch de ce type :
[code:1]powershell c:\monscript.ps1.[/code:1]
Mais impossible si j'utilise Get-QADUser puisque cette cmdlet n’est pas reconnu pas PowerShell
En faite avec le second script le résultat est bon :
[code:1]Get-QADUser -SizeLimit 0 -SearchRoot 'DC=COMMUN,DC=AD,DC=SNCF,DC=FR' |
Select-Object -property \"name\",\"displayname\",\"userPrincipalName\",\"Mail\",\"telephoneNumber\",\"sAMAccountName\" |
Export-Csv c:\test.csv[/code:1]
Mais le problème c'est que ne peux pas utiliser la cmdlet Get-QADUser directement depuis powerShell :
Mon but est d'exécuter tous les soirs un script batch de ce type :
[code:1]powershell c:\monscript.ps1.[/code:1]
Mais impossible si j'utilise Get-QADUser puisque cette cmdlet n’est pas reconnu pas PowerShell
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Connexion ou Créer un compte pour participer à la conversation.
- daniel soares
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 133
- Remerciements reçus 0
il y a 17 ans 4 mois #3182
par daniel soares
Réponse de daniel soares sur le sujet Re:Problème avec Export-CSV
tes taches planifiees sont lancées par ton propre compte?
si ce n'est pas le cas il faut que tu active le snapin
sur le compte correspondant
ou peut etre en executant cette ligne directement dans le script
Add-PSSnapin Quest.ActiveRoles.ADManagement
si ce n'est pas le cas il faut que tu active le snapin
sur le compte correspondant
ou peut etre en executant cette ligne directement dans le script
Add-PSSnapin Quest.ActiveRoles.ADManagement
Connexion ou Créer un compte pour participer à la conversation.
- LIEFOOGHE
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 0
il y a 17 ans 4 mois #3196
par LIEFOOGHE
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Réponse de LIEFOOGHE sur le sujet Re:Problème avec Export-CSV
La plannification est executé avec mon compte.
Powershell reconnait la cmdlet Get-QADUser après avoir fait Add-PSSnapin Quest.ActiveRoles.ADManagement.
Merci bien
Powershell reconnait la cmdlet Get-QADUser après avoir fait Add-PSSnapin Quest.ActiveRoles.ADManagement.
Merci bien
Christophe LIEFOOGHE
SUPINFO Student
www.reseau-dev.fr
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.058 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Problème avec Export-CSV