Question
Rechercher un mot dans une variable
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 14 ans 11 mois #9443
par FO
Rechercher un mot dans une variable a été créé par FO
Bonjour à tous,
Je vous demande un peu d'aide pour un petit problème.
J'éxécute une commande qui me donne un statut sur l'activation d'office 2010. Je mets le résultat de cette commande dans une variable.
Ensuite je souhaiterai pouvoir faire une recherche sur certains mots. Je sais faire une recherche pour un .TXT mais pas pour une variable.
Ci-dessous, le code en question :
[code:1]$StatutOffice = cmd /c cscript \"C:\Program Files\Microsoft Office\Office14\ospp.vbs\" /dstatus[/code:1]
Lorsque que j'éxécute ma variable j'ai le résultat suivant :
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. Tous droits réservés.
---Processing
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeVisioPrem-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeProPlus-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
---Exiting
Je souhaiterai faire une recherche sur le terme \"LICENSED\" avec en sortie $True (présent) ou $False (non présent) afin d'éxécuter ou non le reste de mon code.
Merci d'avance pour votre aide
Je vous demande un peu d'aide pour un petit problème.
J'éxécute une commande qui me donne un statut sur l'activation d'office 2010. Je mets le résultat de cette commande dans une variable.
Ensuite je souhaiterai pouvoir faire une recherche sur certains mots. Je sais faire une recherche pour un .TXT mais pas pour une variable.
Ci-dessous, le code en question :
[code:1]$StatutOffice = cmd /c cscript \"C:\Program Files\Microsoft Office\Office14\ospp.vbs\" /dstatus[/code:1]
Lorsque que j'éxécute ma variable j'ai le résultat suivant :
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. Tous droits réservés.
---Processing
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeVisioPrem-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeProPlus-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
---Exiting
Je souhaiterai faire une recherche sur le terme \"LICENSED\" avec en sortie $True (présent) ou $False (non présent) afin d'éxécuter ou non le reste de mon code.
Merci d'avance pour votre aide
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 14 ans 11 mois #9446
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Rechercher un mot dans une variable
Benjy écrit:
Et ici que le texte soit dans un fichier ou dans une variable l'usage est le même :
[code:1]$s=@\"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. Tous droits réservés.
---Processing
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeVisioPrem-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeProPlus-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
---Exiting
\"@
$s -match \"Licensed\"
#True[/code:1]
Si la présence d'un seul terme \"LICENSED\" suffit à valider ta condition, tu peux utiliser l'opérateur -Match.Je souhaiterai faire une recherche sur le terme \"LICENSED\"
Et ici que le texte soit dans un fichier ou dans une variable l'usage est le même :
[code:1]$s=@\"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. Tous droits réservés.
---Processing
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeVisioPrem-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
LICENSE NAME: Office 14, OfficeProPlus-MAK edition
LICENSE DESCRIPTION: Office 14, RETAIL channel
LICENSE STATUS: ---LICENSED---
ERROR CODE: 0 as licensed
Last 5 characters of installed product key: XXXXX
---Exiting
\"@
$s -match \"Licensed\"
#True[/code:1]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 14 ans 10 mois #9449
par FO
Réponse de FO sur le sujet Re:Rechercher un mot dans une variable
Merci Laurent!
C'est éxactement ça.
Afin d'améliorer la recherche, est-il possible de dire si je trouve le terme suivant : Office 14, OfficeProPlus-MAK edition alors je cherche ce terme mais juste 2 ligne en dessous pour éviter des erreurs si il y a plusieurs produits installés.
[code:1]If ($variable -eq $True)
{
je cherche le terme licensed juste 2 lignes en dessous (où il y a LICENSE STATUS)}[/code:1]
C'est éxactement ça.
Afin d'améliorer la recherche, est-il possible de dire si je trouve le terme suivant : Office 14, OfficeProPlus-MAK edition alors je cherche ce terme mais juste 2 ligne en dessous pour éviter des erreurs si il y a plusieurs produits installés.
[code:1]If ($variable -eq $True)
{
je cherche le terme licensed juste 2 lignes en dessous (où il y a LICENSE STATUS)}[/code:1]
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 14 ans 10 mois #9451
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Rechercher un mot dans une variable
Est-ce que ton script vbs contient des paramètres qui permmettraient de faciliter ton analyse ?
Sinon, si le texte émis a tjr la même structure, il faut réussir à parser ceci :
[code:1]
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
...
Last 5 characters of installed product key: XXXXX
[/code:1]
Ensuite la création d'objet peut être envisagée.
[Edit]
Voir ce post .<br><br>Message édité par: Laurent Dardenne, à: 21/04/11 23:03
Sinon, si le texte émis a tjr la même structure, il faut réussir à parser ceci :
[code:1]
SKU ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
...
Last 5 characters of installed product key: XXXXX
[/code:1]
Ensuite la création d'objet peut être envisagée.
[Edit]
Voir ce post .<br><br>Message édité par: Laurent Dardenne, à: 21/04/11 23:03
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.087 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Rechercher un mot dans une variable