IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Travailler dans un fichier csv [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut Travailler dans un fichier csv
    Bonjour,
    J'ai créé un fichier 'Feuille de suivie compact flash.csv' et j'ai écris des informations sur 4 colonnes séparé par ";" , la première colonne représente le numéro de la carte et il me faut faire une recherche dans cette colonne la.
    Mon problème est que la dernière colonne représente le nombre de fois ou elle a été formater, et quand je recherche la carte "1" il va regarder sur toute les colonnes et prendre la dernière qui contient le numéro "1" c'est a dire la 43, je vous met le script vous comprendrez mieux ^^ :

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    $trouve1=0
    $file_csv=Get-Content "C:\Users\Utilisateur\Documents\SAE_script\Feuille de suivie compact flash.csv"
    [array]::reverse($file_csv)
    Foreach($ligne in $file_csv){
          if($trouve -eq 0){
                if($ligne -like "*$numero1*"){
                      $Laligne=$ligne
                      $trouve1=1
                      $test3=Test-Path "C:\Users\Utilisateur\Documents\SAE_script\fichier.txt"
                      if($test3 -eq $false){
                            $file_note=New-Item "C:\Users\Utilisateur\Documents\SAE_script\fichier.txt" -type file
                      }
                      $file=Get-Content "C:\Users\Utilisateur\Documents\SAE_script\fichier.txt"
                      Add-Content -Path $file -Value "$Laligne"
               }
          }
    }
    vue que la carte 43 a été formater 1 fois et que c'est la dernière ligne du fichier csv, il m'affiche quand je fait un "$Laligne" la ligne 43 mais je voudrais qu'il fasse sa recherche dans le colonne 1 pour trouvé la carte 1.

    Bonne journée à tous ^^

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Peut on avoir un exemple du fichier 'Feuille de suivie compact flash.csv' STP.

  3. #3
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    Je vous fait part du Fichier csv.
    Images attachées Images attachées  

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Si la première colonne représente le numéro de la carte il n'y à qu'une entré et donc pas de problème ?!

  5. #5
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Tu pourrai nous transférer le fichier dans un format exploitable, csv par exemple, j'ai un peu la flemme de tout recopier pour faire un test.
    Et essaye de mettre en exergue le problème que tu rencontre.

  6. #6
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    Oui je t'envoie en fichier texte np ^^
    Fichiers attachés Fichiers attachés

  7. #7
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Nous nommerons les 4 colonnes 'a' 'b' 'c' et 'd'.

    Pour rechercher toutes les lignes qui contiennent la valeur 1 dans la colonne a :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    Import-Csv -LiteralPath feuille.txt -Header "a", "b", "c", "d" -Delimiter ";" | Where-Object {$_.a -eq 1}
    Résultat
    a b c d
    - - - -
    1 07/05/2016 UcineoBus_v2.10 1
    1 13/06/2016 UcineoBus_v2.50 2
    1 16/06/2016 UcineoBus_v2.53 3
    Effectivement, il existe plusieurs lignes. Si tu as d'autres critères pour filtrer plus ou sélectionner qu'une colonne ... ?

  8. #8
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    Merci
    oui pour filtrer je pence faire un [array]::reverse pour inverser le fichier et sélectionner la première ligne, il faudrait testé

  9. #9
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    Est-ce-que ce que je peut faire ca sur une variable, je m'explique :
    la ligne que tu m'a donner je la place dans le script et le résultat va dans une variable, serait-il possible d'inversé les 3 lignes (la dernière ligne à la place de la première ect...) que l'ont obtient comme résultat dans la variable pour récupérer la dernière?

  10. #10
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Donc tu veux la première ligne, et pouvoir exploiter les données via des variables.

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $res=Import-Csv -LiteralPath feuille.txt -Header "a", "b", "c", "d" -Delimiter ";" | Where-Object {$_.a -eq 1} | Select-Object -First 1
    $res.a
    $res.b
    $res.c
    $res.d

    Résultat :
    1
    07/05/2016
    UcineoBus_v2.10
    1

  11. #11
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    oui c'était à ca que je pensais, je vais tester cela plus tard la maintenant je ne peut pas mais je te remercie quand même pour ton aide

  12. #12
    Nouveau membre du Club Avatar de botLIA
    Homme Profil pro
    Étudiant en Licence 3 CDA
    Inscrit en
    Juin 2016
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant en Licence 3 CDA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 45
    Points : 29
    Points
    29
    Par défaut
    Je te remercie ca marche nickel
    J'ai juste remplacer -First par -Last comme ca il prend toujours la dernière ligne de $res
    Bonne soirée et encore merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sauvegarder les données dans un fichier CSV
    Par beb30 dans le forum MFC
    Réponses: 5
    Dernier message: 08/03/2006, 13h06
  2. Réponses: 12
    Dernier message: 27/01/2006, 11h07
  3. Export dans un fichier CSV
    Par sophie86 dans le forum Documents
    Réponses: 4
    Dernier message: 09/12/2005, 09h55
  4. resultat d'une requete dans un fichier csv
    Par PAYASS59 dans le forum Requêtes
    Réponses: 1
    Dernier message: 21/09/2005, 21h14
  5. [débutant] nombre de colonne dan sun fichier csv
    Par mandagor dans le forum C++
    Réponses: 18
    Dernier message: 15/06/2005, 15h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo