Question
[Résolu]importer et modifier un csv
- Gabriel
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 248
- Remerciements reçus 1
il y a 16 ans 8 mois #4939
par Gabriel
[Résolu]importer et modifier un csv a été créé par Gabriel
Salut a tous. 
j'aimerais savoir comment modifier les propriétés d'un objet contenant l'import d'un csv, pour ensuite le sauver dans le fichier csv importé.
Fichier csv
[code:1]
Propriete_A,Propriete_B,Propriete_C
robert,homeworld,gll
marcel,doom,glo
[/code:1]
je souhaite importer le fichier csv, et modifier la 3eme valeur par exemple en fonction des 2 premieres.
Je sais importer dans une valeur et je sais generer la valeur
[code:1]
$a = import-csv toto.csv
$a | foreach-object {\"jeux_\" + $_.Propriete_A + \"-\" + $_.Propriete_B}
[/code:1]
mais comment le faire pour que ce soit les valeurs de l'objet qui soit modifier, pour apres faire un export-csv?
merci de vos lumieres
Message édité par: tonic8, à: 23/07/09 11:24
Message édité par: tonic8, à: 6/08/09 19:35<br><br>Message édité par: tonic8, à: 13/08/09 17:35
j'aimerais savoir comment modifier les propriétés d'un objet contenant l'import d'un csv, pour ensuite le sauver dans le fichier csv importé.
Fichier csv
[code:1]
Propriete_A,Propriete_B,Propriete_C
robert,homeworld,gll
marcel,doom,glo
[/code:1]
je souhaite importer le fichier csv, et modifier la 3eme valeur par exemple en fonction des 2 premieres.
Je sais importer dans une valeur et je sais generer la valeur
[code:1]
$a = import-csv toto.csv
$a | foreach-object {\"jeux_\" + $_.Propriete_A + \"-\" + $_.Propriete_B}
[/code:1]
mais comment le faire pour que ce soit les valeurs de l'objet qui soit modifier, pour apres faire un export-csv?
merci de vos lumieres
Message édité par: tonic8, à: 23/07/09 11:24
Message édité par: tonic8, à: 6/08/09 19:35<br><br>Message édité par: tonic8, à: 13/08/09 17:35
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 16 ans 7 mois #4958
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:importer et modifier un csv
Salut Tonic8 !
Et bien tout simplement comme si tu manipulais un tableau. A savoir, par exemple pour modifier la valeur correspondant à \"homeworld\" :
[code:1]
$a = import-csv toto.csv
$a[0].Propriete_B=\"homecity\"[/code:1]
résultat :
[code:1]
Propriete_A Propriete_B Propriete_C
robert Titi gll
marcel doom glo
[/code:1]
Ensuite tu n'as plus qu'à exporter ton tableau avec la commande Export-CSV:
[code:1]
$a | export-csv toto_modifie.csv
[/code:1]
Voilà...
Arnaud
Et bien tout simplement comme si tu manipulais un tableau. A savoir, par exemple pour modifier la valeur correspondant à \"homeworld\" :
[code:1]
$a = import-csv toto.csv
$a[0].Propriete_B=\"homecity\"[/code:1]
résultat :
[code:1]
Propriete_A Propriete_B Propriete_C
robert Titi gll
marcel doom glo
[/code:1]
Ensuite tu n'as plus qu'à exporter ton tableau avec la commande Export-CSV:
[code:1]
$a | export-csv toto_modifie.csv
[/code:1]
Voilà...
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 248
- Remerciements reçus 1
il y a 16 ans 7 mois #4966
par Gabriel
je savais que c'etait bateau... je cherchais dans les set-property et autre cmdlet grrr.
Merci Arnaud
<br><br>Message édité par: tonic8, à: 23/07/09 11:23
Réponse de Gabriel sur le sujet Re:importer et modifier un csv
Merci Arnaud
Connexion ou Créer un compte pour participer à la conversation.
- Gabriel
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 248
- Remerciements reçus 1
il y a 16 ans 7 mois #5042
par Gabriel
Réponse de Gabriel sur le sujet Re:importer et modifier un csv
ben euh j'ai une autre question, comment me servir d'un foreach pour editer toutes les valeurs d'un champs, je m'explique:
[code:1]Propriete_A Propriete_B Propriete_C
robert 12 gll
marcel 1024 glo
riri 3 glo
fifi 2048 glo
loulou 1024 glo
[/code:1]
à la propriete_B je dois lui passer une operation en l'ocurrence une fonction qui manipule et sort un autre resultat et qui l'enregistre a la place, genre
[code:1]
$a = import-csv toto.csv
foreach ($propriete in $a.Propriete_B«») {
maFonction ($propriete)
$a[0].Propriete_B=$propriete
[/code:1]
??? merchi d'avance
p.s.: je change le status du post le temps de la reponse...
[code:1]Propriete_A Propriete_B Propriete_C
robert 12 gll
marcel 1024 glo
riri 3 glo
fifi 2048 glo
loulou 1024 glo
[/code:1]
à la propriete_B je dois lui passer une operation en l'ocurrence une fonction qui manipule et sort un autre resultat et qui l'enregistre a la place, genre
[code:1]
$a = import-csv toto.csv
foreach ($propriete in $a.Propriete_B«») {
maFonction ($propriete)
$a[0].Propriete_B=$propriete
[/code:1]
??? merchi d'avance
p.s.: je change le status du post le temps de la reponse...
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 16 ans 7 mois #5053
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:importer et modifier un csv
Salut,
quitte à utiliser une boucle autant utiliser le cmdlet foreach (pipeline) :
[code:1]
#avec \"C:\temp\test.csv\" =
#Email,Fullname
#email01@domain.fr,test01
#email02@domain.fr,test02
#email03@domain.fr,test03
function make($s) {$s.ToUpper()}
Import-csv \"C:\temp\test.csv\"|
foreach {
$_.Fullname=Make $_.Fullname
$_
}|
export-csv \"C:\temp\test_modifie.csv\" -noTypeInformation
type \"C:\temp\test.csv\"
type \"C:\temp\test_modifie.csv\"
[/code:1]
quitte à utiliser une boucle autant utiliser le cmdlet foreach (pipeline) :
[code:1]
#avec \"C:\temp\test.csv\" =
#Email,Fullname
#email01@domain.fr,test01
#email02@domain.fr,test02
#email03@domain.fr,test03
function make($s) {$s.ToUpper()}
Import-csv \"C:\temp\test.csv\"|
foreach {
$_.Fullname=Make $_.Fullname
$_
}|
export-csv \"C:\temp\test_modifie.csv\" -noTypeInformation
type \"C:\temp\test.csv\"
type \"C:\temp\test_modifie.csv\"
[/code:1]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.061 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [Résolu]importer et modifier un csv