Question if sur le contenu d'un fichier

Plus d'informations
il y a 10 ans 11 mois #20251 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]

:S

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.

Plus d'informations
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
Bonjour

c'est la suite de ce sujet ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #20255 par Toper
Réponse de Toper sur le sujet Re:if sur le contenu d'un fichier
Bonjour,
non.

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #20256 par xyz
Réponse de xyz sur le sujet Re:if sur le contenu d'un fichier
Salut,
je ne retrouve pas ici :
gregmurf écrit:

si il contient tel mot, alors lance tel exécutable

ce que tu veux faire :
gregmurf écrit:

en fait, j'ai du mal à \"piper\" le get-content pour le réutiliser ensuite...

S'il le mot existe, (par exemple via Select-String) tu ne peux récupérer l'intégralité du contenu du fichier texte.
Essaie en utilisant une variable intermédiaire, sinon précise ton traitement.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #20258 par Toper
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

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #20261 par xyz
Réponse de xyz sur le sujet Re:if sur le contenu d'un fichier
gregmurf écrit:

Et c'est là que je n'arrive pas à \&quot;dire\&quot; si \&quot;get-content\&quot; trouve la ligne, alors fait ceci.

Utilise Select-String qui peut renvoyer un booléen, recherche dans le forum, il y a un bug à contourner.
gregmurf écrit:

Autre petite question

Il en manque un bout ? Je n'ai pas compris.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.045 secondes
Propulsé par Kunena