Question
if sur le contenu d'un fichier
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 10 ans 11 mois #20251
par Toper
Powershell: la vie est belle
if sur le contenu d'un fichier a été créé par Toper
Bonjour,
je n'arrive pas à écrire mon script.
Voici ce que j'essaie de faire:
[code:1]
Recuperer l'architecture de l'OS
si x86, vérifie si le contenu du fichier_x68 texte contient tel mot
si il contient tel mot, alors lance tel exécutable
sinon (sous entendu c'est un x64), vérifier si le contenu du fichier_x64 texte contient tel mot
si il contient tel mot, alors lance tel exécutable
[/code:1]

en fait, j'ai du mal à \"piper\" le get-content pour le réutiliser ensuite...
je n'arrive pas à écrire mon script.
Voici ce que j'essaie de faire:
[code:1]
Recuperer l'architecture de l'OS
si x86, vérifie si le contenu du fichier_x68 texte contient tel mot
si il contient tel mot, alors lance tel exécutable
sinon (sous entendu c'est un x64), vérifier si le contenu du fichier_x64 texte contient tel mot
si il contient tel mot, alors lance tel exécutable
[/code:1]
en fait, j'ai du mal à \"piper\" le get-content pour le réutiliser ensuite...
Powershell: la vie est belle
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 10 ans 11 mois #20254
par Philippe
Réponse de Philippe sur le sujet Re:if sur le contenu d'un fichier
Connexion ou Créer un compte pour participer à la conversation.
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 10 ans 11 mois #20255
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Re:if sur le contenu d'un fichier
Bonjour,
non.
non.
Powershell: la vie est belle
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 10 ans 11 mois #20256
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:if sur le contenu d'un fichier
Salut,
je ne retrouve pas ici :
gregmurf écrit:
gregmurf écrit:
Essaie en utilisant une variable intermédiaire, sinon précise ton traitement.
je ne retrouve pas ici :
gregmurf écrit:
ce que tu veux faire :si il contient tel mot, alors lance tel exécutable
gregmurf écrit:
S'il le mot existe, (par exemple via Select-String) tu ne peux récupérer l'intégralité du contenu du fichier texte.en fait, j'ai du mal à \"piper\" le get-content pour le réutiliser ensuite...
Essaie en utilisant une variable intermédiaire, sinon précise ton traitement.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 10 ans 11 mois #20258
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Re:if sur le contenu d'un fichier
Voici:
j'ai un fichier .ini dans lequel doit se trouver \"telle ligne\".
Si cette ligne ne s'y trouve pas, alors je dois lancer un exécutable.
Et vu que ce fichier se trouve dans program files, je dois vérifier la présence de cette ligne sous les 2 architectures.
Voici comment je vérifie l'architecture:
[code:1]if ( $(gwmi win32_processor | select description) -match \"x64\" ) {[/code:1]
Voici comment je vérifie la présence de la ligne dans le fichier texte:
[code:1]Get-Content \"C:\Program Files (x86)\dossier\fichier.INI\" | Where-Object { $_.Contains(\"la_ligne_en_question\"«») }[/code:1]
Et c'est là que je n'arrive pas à \"dire\" si \"get-content\" trouve la ligne, alors fait ceci.
Ensuite de ça, je place mon \"} else { pour faire la même chose sous x86.
Autre petite question: j'ai mis dans un premier temps mes variables au début de mon script, mais powershell les lance toutes avant de passer au code. Ce qui me met une erreur lorsqu'il lit la partie 64bits sur un poste 32bits...
Message édité par: gregmurf, à: 23/06/15 09:46<br><br>Message édité par: gregmurf, à: 23/06/15 09:47
j'ai un fichier .ini dans lequel doit se trouver \"telle ligne\".
Si cette ligne ne s'y trouve pas, alors je dois lancer un exécutable.
Et vu que ce fichier se trouve dans program files, je dois vérifier la présence de cette ligne sous les 2 architectures.
Voici comment je vérifie l'architecture:
[code:1]if ( $(gwmi win32_processor | select description) -match \"x64\" ) {[/code:1]
Voici comment je vérifie la présence de la ligne dans le fichier texte:
[code:1]Get-Content \"C:\Program Files (x86)\dossier\fichier.INI\" | Where-Object { $_.Contains(\"la_ligne_en_question\"«») }[/code:1]
Et c'est là que je n'arrive pas à \"dire\" si \"get-content\" trouve la ligne, alors fait ceci.
Ensuite de ça, je place mon \"} else { pour faire la même chose sous x86.
Autre petite question: j'ai mis dans un premier temps mes variables au début de mon script, mais powershell les lance toutes avant de passer au code. Ce qui me met une erreur lorsqu'il lit la partie 64bits sur un poste 32bits...
Message édité par: gregmurf, à: 23/06/15 09:46<br><br>Message édité par: gregmurf, à: 23/06/15 09:47
Powershell: la vie est belle
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 10 ans 11 mois #20261
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:if sur le contenu d'un fichier
gregmurf écrit:
gregmurf écrit:
Utilise Select-String qui peut renvoyer un booléen, recherche dans le forum, il y a un bug à contourner.Et c'est là que je n'arrive pas à \"dire\" si \"get-content\" trouve la ligne, alors fait ceci.
gregmurf écrit:
Il en manque un bout ? Je n'ai pas compris.Autre petite question
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.045 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- if sur le contenu d'un fichier