Jak uruchomić i uruchomić zewnętrzny skrypt w tle? [duplikować]
To pytanie ma już tutaj odpowiedź:
Jak uruchomić proces w tle w Pythonie? 7 odpowiedziPróbowałem tych dwóch metod:
os.system("python test.py")
subprocess.Popen("python test.py", shell=True)
Oba podejścia muszą czekać, aż test.py zakończy blokowanie głównego procesu. Wiem, że „nohup” może wykonać tę pracę. Czy istnieje sposób Pythona na uruchomienie test.py lub innych skryptów powłoki i pozostawienie go uruchomionego w tle?
Załóżmy, że test.py wygląda tak:
for i in range(0, 1000000):
print i
Zarówno os.system (), jak i subprocess.Popen () będą blokować program główny do momentu wyświetlenia 1000000 wierszy wyjścia. Chcę, aby test.py działał cicho i wyświetlał tylko dane wyjściowe programu głównego. Główny program może się wyłączyć, gdy test.py nadal działa.