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 :

question debutant boucle foreach avec select-string | select-object : affichage des resulats non tr


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Octobre 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2018
    Messages : 6
    Par défaut question debutant boucle foreach avec select-string | select-object : affichage des resulats non tr
    Bonjour,

    J'utilise un script qui, à partir d'un fichier texte contenant une liste de valeurs à rechercher, va me retourner les chemins des fichiers ou se trouve chaque fichier.
    Mon problème est que j'aimerai qu'il m'affiche également une ligne pour chaque valeur non retrouvée.

    exemple:
    NUM_INV;Path (si trouvé)
    NUM_INV; (si non trouvé)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $Lists ="list of invoices"
    write-Host "NUM_INV;Path"
    foreach ($List in Get-Content $Lists)
    {
    
    foreach ($file in Get-ChildItem -recurse| Select-String -pattern $List | Select-Object -Unique path) {
    [string]::Concat($List,";",$file.path)
    }
    }
    Merci d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    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 218
    Par défaut
    Je considère que le dossier de recherche est le même que la ou se trouve ton script et ton fichier de texte à chercher

    Je ne me sens pas trop inspiré mais voici un code fonctionnel

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    $filelist = "list of invoices"
    $sep = ";"
     
    $lists = Get-Content $filelist | ForEach-Object {
        [PSCustomObject]@{
            texte = $_
            files = @()
        }
    }
     
    foreach ($file in Get-ChildItem -Recurse -File -Exclude @($myInvocation.ScriptName, $filelist))
    {
        $content = $file | Get-Content
        foreach($list in $lists)
        {
            if ($content -like "*$($list.texte)*")
            {
                $list.files += $file.FullName
            }
        }
    }
     
    $result = @()
    $lists | ForEach-Object {
        if ($_.files.Count -eq 0)
        {
            $result += "$($_.texte)${sep}"
        }
        else
        {
            foreach($file in $_.files)
            {
                $result += "$($_.texte)${sep}${file}"
            }
        }
    }
     
    Write-Host $($result -join "`n")

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Responsable d'un système d'information métier
    Inscrit en
    Octobre 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Responsable d'un système d'information métier
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2018
    Messages : 6
    Par défaut
    Merci je test et je ferai un retour.
    Bon weekend

Discussions similaires

  1. Boucle Foreach et selection de valeurs
    Par Rafapouf dans le forum Langage
    Réponses: 8
    Dernier message: 09/02/2015, 15h00
  2. Réponses: 1
    Dernier message: 17/09/2014, 01h53
  3. [MySQL] Requêtes UPDATE dans boucles foreach avec array
    Par vinceom92 dans le forum PHP & Base de données
    Réponses: 67
    Dernier message: 16/03/2014, 21h29
  4. Boucle for avec SELECT et variable indicée
    Par hisin dans le forum Langage
    Réponses: 4
    Dernier message: 14/12/2009, 11h53
  5. [REQUETE] Question requete 'insert into' avec select
    Par Jeannot dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 09/08/2007, 17h52

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