Python i PowerShell

0

Witam.
Chciałbym zrobić następującą rzecz:
1.Mam skrypt w PSH
2.Skrypt powinien odpalać się co minutę
3.Jeżeli wynik działania skyptu będzie zawierał frazę 'X' powinno odpalić się nowe okienko z informacją o tym.
4.Oczywiście każdorazowy wynik działania skryptu powinien być umieszczony w pliku tekstowym.

Jaki mam pomysł?

Do wywołania skryptu PSH użyć modułu subprocess:

import subprocess
p=subprocess.Popen(['powershell.exe', 'c:\\powershell.ps1'], stdout=sys.stdout)

Następnie zmienną 'p' chciałbym przekonwertować na typ String.
Pytanie czy się da?

Jeżeli się da to standardowe:

if p contains 'XYZ' :
 do some stuff

Zapis do logu tekstowego za pomocą:

with open('w') as file:
     some code...

Nie jestem programistą of korz a Pythona wykorzystuję czasami do automatyzacji czynności.
Pytanie: ma to jakiś sens czy doświadczenie programiści Pythona widzą to inaczej?

Pozdrawiam

2

Użyj tego
https://docs.python.org/3/library/subprocess.html#subprocess.check_output

albo w ostateczności:

out, err = p.communicate()
0
sugar_hiccup napisał(a):

Użyj tego
https://docs.python.org/3/library/subprocess.html#subprocess.check_output

albo w ostateczności:

out, err = p.communicate()

Dzięki.
Finalnie skorzystałem z

command='powershell.exe c:\\powershell.ps1'
process=subprocess.run(command, capture_output=True)
output=str(process)

Działa!

1 użytkowników online, w tym zalogowanych: 0, gości: 1