Question
Traitement de text [Résolu]
- Frisco
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 16 ans 4 semaines #2033
par Frisco
Traitement de text [Résolu] a été créé par Frisco
Bonjour tout le monde,
Alors aujourd'hui je viens pour un problème de traitement de variables.
J'ai une variable $import qui contient ceci
nomdomain/nomgroup1
nomdomain/nomgroup2
nomdomain/nomgroup3
nomdomain/nomgroup4
nomdomain/nomgroup5
Et j'aimerai juste extraire les nomgroupe (qui sont évidement différent les uns des autres) et les mettres dans une nouvelle variable.
Je n'arrive pas a trouver le moyen donc j'espère que vous pourrez m'aider
D'avance merci
Message édité par: frisco, à: 28/03/08 11:31<br><br>Message édité par: frisco, à: 31/03/08 15:03
Alors aujourd'hui je viens pour un problème de traitement de variables.
J'ai une variable $import qui contient ceci
nomdomain/nomgroup1
nomdomain/nomgroup2
nomdomain/nomgroup3
nomdomain/nomgroup4
nomdomain/nomgroup5
Et j'aimerai juste extraire les nomgroupe (qui sont évidement différent les uns des autres) et les mettres dans une nouvelle variable.
Je n'arrive pas a trouver le moyen donc j'espère que vous pourrez m'aider
D'avance merci
Message édité par: frisco, à: 28/03/08 11:31<br><br>Message édité par: frisco, à: 31/03/08 15:03
Connexion ou Créer un compte pour participer à la conversation.
- PASCAULT
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 78
- Remerciements reçus 0
il y a 16 ans 4 semaines #2034
par PASCAULT
Réponse de PASCAULT sur le sujet Re:Traitement de text
Bonjour frisco,
Un exemple de code qui pourrait te convenir:
[code:1]$nomgroup=$import|%{$_.split(\"/\"«»)[1]}[/code:1]
ou sinon, expression régulière...
Je laisse batchman t'en dire 2 mots !
Un exemple de code qui pourrait te convenir:
[code:1]$nomgroup=$import|%{$_.split(\"/\"«»)[1]}[/code:1]
ou sinon, expression régulière...
Je laisse batchman t'en dire 2 mots !
Connexion ou Créer un compte pour participer à la conversation.
- Frisco
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 16 ans 3 semaines #2038
par Frisco
Réponse de Frisco sur le sujet Re:Traitement de text
Tout d'abord merci pour l'aide mais ...
J'ai un message d'erreur:
ERROR: Method invocation failed because [System.Management.Automation.PSCustomObject] doesn't contain a method named 'split'.
ERROR: At line:2 char:29
ERROR: + $nomgroup=$import|%{$_.split <<<< (\"/\")[1]}
En fait j'obtiens les infos d'un fichiers csv et j'aimerai juste stocker le champ 2 du fichiers si ca peut vous éclairer ...
J'ai un message d'erreur:
ERROR: Method invocation failed because [System.Management.Automation.PSCustomObject] doesn't contain a method named 'split'.
ERROR: At line:2 char:29
ERROR: + $nomgroup=$import|%{$_.split <<<< (\"/\")[1]}
En fait j'obtiens les infos d'un fichiers csv et j'aimerai juste stocker le champ 2 du fichiers si ca peut vous éclairer ...
Connexion ou Créer un compte pour participer à la conversation.
- PASCAULT
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 78
- Remerciements reçus 0
il y a 16 ans 3 semaines #2040
par PASCAULT
Réponse de PASCAULT sur le sujet Re:Traitement de text
oui, le problème effectivement est que l'on ne sait pas comment est initialisé ta variable donc le type.
Peux-tu nous montrer le type de fichier csv que tu as ?
Et comment tu initialises ta variable... get-content , import-csv... ?
La partie de script que je t'ai mis fonctionnait avec
[code:1] $import=\"nomdomain/nomgroup1\",\"nomdomain/nomgroup2\",\"nomdomain/nomgroup3\",\"nomdomain/nomgroup4\",\"nomdomain/nomgroup5\"[/code:1]
Mais l'objet obtenu n'est pas le même...
Peux-tu nous montrer le type de fichier csv que tu as ?
Et comment tu initialises ta variable... get-content , import-csv... ?
La partie de script que je t'ai mis fonctionnait avec
[code:1] $import=\"nomdomain/nomgroup1\",\"nomdomain/nomgroup2\",\"nomdomain/nomgroup3\",\"nomdomain/nomgroup4\",\"nomdomain/nomgroup5\"[/code:1]
Mais l'objet obtenu n'est pas le même...
Connexion ou Créer un compte pour participer à la conversation.
- Frisco
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 16 ans 3 semaines #2045
par Frisco
Réponse de Frisco sur le sujet Re:Traitement de text
Alors j'importe un fichier CSV
colonne1 = nom du share
colonne2 = nom du groupe de sécurité
( les colonnes sont séparées pas 1 \";\")
j'importe ce fichier de la façon suivante:
[code:1]$import = import-Csv OANN01-Rights-20080328.txt[/code:1]
mais alors dans ma variable j'ai tout le contenu du fichier mais j'aimerai avoir le contenu dans la colonne1 dans une variable et le contenu dans la colonne2 dans une autre variable.
colonne1 = nom du share
colonne2 = nom du groupe de sécurité
( les colonnes sont séparées pas 1 \";\")
j'importe ce fichier de la façon suivante:
[code:1]$import = import-Csv OANN01-Rights-20080328.txt[/code:1]
mais alors dans ma variable j'ai tout le contenu du fichier mais j'aimerai avoir le contenu dans la colonne1 dans une variable et le contenu dans la colonne2 dans une autre variable.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 16 ans 3 semaines #2046
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:Traitement de text
Salut Frisco,
Malheureusement pour utiliser Import-CSV il faut obligatoirement que ton séparateur de champs soit la virgule.
Ceci étant, si tu ne peux pas changer le format du fichier à importer, tu peux très simplement transformer celui-ci comme ceci:
[code:1]
$a = get-content MonFichierAvecPtVirgules.txt
$a -replace ';',',' > MonFichierAvecVirgules.csv
[/code:1]
Ensuite il ne te reste plus qu'à importer le fichier résultant avec Import-CSV. D'autre part vérifie bien que ton fichier ait un intitulé de colonnes.
Arnaud
Malheureusement pour utiliser Import-CSV il faut obligatoirement que ton séparateur de champs soit la virgule.
Ceci étant, si tu ne peux pas changer le format du fichier à importer, tu peux très simplement transformer celui-ci comme ceci:
[code:1]
$a = get-content MonFichierAvecPtVirgules.txt
$a -replace ';',',' > MonFichierAvecVirgules.csv
[/code:1]
Ensuite il ne te reste plus qu'à importer le fichier résultant avec Import-CSV. D'autre part vérifie bien que ton fichier ait un intitulé de colonnes.
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.
Temps de génération de la page : 0.076 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Traitement de text [Résolu]