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 :

Rechercher via id un objet json dans un fichier [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de Lekno
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    883
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 883
    Par défaut Rechercher via id un objet json dans un fichier
    Bonjour à tous, je souhaite rechercher via powershell si un objet json est présent dans un fichier, actuellement je tente via cette syntaxe qui me retourne toujours un resultat vide mais sans aucun message d'erreur. Auriez-vous une idée du soucis ?

    Render.json
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    [
        "{\n\"id\": \"STRAG15022020\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ,
        "{\n\"id\": \"STRAG15022020\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ]
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $PathRender = "C:\datas\render.json"
    $Allcontent = (Get-Content -Path "$PathRender") -join "`n"
    $TuplesContent = ConvertFrom-Json –InputObject $Allcontent
    $MatchTuple = $TuplesContent | where {$_.id -eq 'STRAG15022020'}
    write-host $MatchTuple

  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
    Ton fichier n'est pas un json valide, je le modifie et l’indente.
    Je tiens a te préciser que les deux objets se ressemble

    Render.json
    Code json : 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
    [
    	{
    		"id": "STRAG15022020",
    		"name": "STRAG",
    		"date": 15022020,
    		"url": [
    		"\\hosts\\STRAG\\security\\15022020security.json",
    		"\\hosts\\STRAG\\application\\15022020application.json",
    		"\\hosts\\STRAG\\system\\15022020system.json"
    		]
    	}
    	,
    	{
    		"id": "STRAG15022020",
    		"name": "STRAG",
    		"date": 15022020,
    		"url": [
    		"\\hosts\\STRAG\\security\\15022020security.json",
    		"\\hosts\\STRAG\\application\\15022020application.json",
    		"\\hosts\\STRAG\\system\\15022020system.json"
    		]
    	}
    ]

    Il n'y a plus qu'a le convertir en objet Powershell. Je ne vais pas faire de recherche car les deux objets sont les mêmes et je ne sais pas ce que tu veux trouver.
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    $json = Get-Content -Path "test.json" | ConvertFrom-Json

  3. #3
    Membre chevronné Avatar de Lekno
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    883
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 883
    Par défaut
    Salut, Merci pour ta réponse, j'ai finalement réussi

    Ce que je n'avais vu c'est que "Get-Content" retourne sous forme d'objet le contenu de mon fichier, il n'est donc pas nécessaire de repasser par "ConvertFrom-Json"
    Je confirme que le fichier json que je présente est valide pour powershell car celui ci est généré depuis un autre script avec "ConvertFrom-Json"

    Je passe en résolu merci

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $PathRender = "C:\render\render.json"
    $Allcontent = (Get-Content -Path "$PathRender")
    $Ispresent = $Allcontent | select-string -pattern "STRAG15022024"
    if (!$Ispresent) { Write-Host "id non trouve" }else{Write-Host "id present"}

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    [
        "{\n\"id\": \"STRAG15022021\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ,
        "{\n\"id\": \"STRAG15022022\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ,
        "{\n\"id\": \"STRAG15022023\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ,
        "{\n\"id\": \"STRAG15022024\",\n\"name\":\"STRAG\",\n\"date\":15022020,\n\"url\":[\"\\hosts\\STRAG\\security\\15022020security.json\",\n\"\\hosts\\STRAG\\application\\15022020application.json\", \n\"\\hosts\\STRAG\\system\\15022020system.json\"]\n}"
    ]

  4. #4
    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
    select-string
    Oui heu ... enfin tu as conscience que la tu traite un objet de type string et que cela n'a rien avoir avec du json ?

  5. #5
    Membre chevronné Avatar de Lekno
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    883
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 883
    Par défaut
    Non je n'ai pas fais attention à ce point, il faudrait que je creuse un peut plus la manipulation de json via powershell.

    J'utilise json afin de l'utiliser via javascript dans ma dernière étape de traitement

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

Discussions similaires

  1. [Toutes versions] Détecter via VBA les objets OLE dans un Word
    Par ORESYS dans le forum VBA Word
    Réponses: 3
    Dernier message: 04/10/2022, 17h42
  2. Récupérer un objet JSON dans un Javascript
    Par demcoul dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 08/08/2019, 00h29
  3. Stocker une liste d'objets JSON dans localStorage
    Par Tanebisse dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/03/2016, 21h22
  4. inserer un objet JSON dans HTML
    Par Palsajicoco dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/03/2011, 14h00
  5. [NHibernate] recherche via Icriteria sur objets complexes
    Par mitchairben dans le forum NHibernate
    Réponses: 1
    Dernier message: 11/05/2010, 17h20

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