Jak wywołać zewnętrzne polecenie (tak, jakbym napisał je w powłoce Unixa lub w wierszu poleceń systemu Windows) z poziomu skryptu
Moduł podprocesu Pythona umożliwia tworzenie nowych procesów, łączenie się z ich potokami wejścia / wyjścia / błędów i uzyskiwanie ich kodów powrotu. Użyj go, aby uruchomić polecenie powłoki lub plik wykonywalny w Pythonie.
Jak wywołać zewnętrzne polecenie (tak, jakbym napisał je w powłoce Unixa lub w wierszu poleceń systemu Windows) z poziomu skryptu
Chcę napisać funkcję, która wykona polecenie powłoki i zwróci jego wynik jako ciąg , bez względu na to, czy jest to komunikat o błędzie czy sukcesie. Chcę tylko uzyskać ten sam wynik, który uzyskałbym za pomocą wiersza poleceń. Jaki byłby przykład kodu, który zrobiłby coś takiego? Na...
Korzystam z modułu podprocesu, aby uruchomić podproces i połączyć się z jego strumieniem wyjściowym (standardowym wyjściem). Chcę mieć możliwość wykonywania nieblokujących odczytów na swoim standardowym wyjściu. Czy istnieje sposób, aby blokować .readline lub sprawdzić, czy w strumieniu znajdują...
Przekaż opinię na temat przepełnienia stosu w następujący sposób : Przekaż opinię na temat stosu i przepełnienia stosu Oto kod Pythona, aby uruchomić dowolne polecenie zwracające jego stdoutdane lub zgłosić wyjątek od niezerowych kodów wyjścia: proc = subprocess.Popen(...
Uruchamiam podproces za pomocą następującego polecenia: p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True) Jednak gdy próbuję zabić za pomocą: p.terminate() lub p.kill() Polecenie działa w tle, więc zastanawiałem się, jak mogę faktycznie zakończyć proces. Zauważ, że kiedy...
Próbuję wykonać wywołanie systemowe w Pythonie i zapisać dane wyjściowe w ciągu znaków, którym mogę manipulować w programie Python. #!/usr/bin/python import subprocess p2 = subprocess.Popen("ntpq -p") Próbowałem kilku rzeczy, w tym niektórych sugestii tutaj: Pobieranie danych wyjściowych z...
Uważam, że uruchamianie zewnętrznego polecenia w nieco zmodyfikowanym środowisku jest bardzo częstym przypadkiem. Tak zazwyczaj to robię: import subprocess, os my_env = os.environ my_env["PATH"] = "/usr/sbin:/sbin:" + my_env["PATH"] subprocess.Popen(my_command, env=my_env) Mam przeczucie, że jest...
Używam eSpeak na Ubuntu i mam skrypt Python 2.7, który drukuje i wypowiada komunikat: import subprocess text = 'Hello World.' print text subprocess.call(['espeak', text]) eSpeak wydaje pożądane dźwięki, ale zaśmieca powłokę z pewnymi błędami (ALSA lib ..., brak połączenia z gniazdem), więc nie...
Jeśli wykonam następujące czynności: import subprocess from cStringIO import StringIO subprocess.Popen(['grep','f'],stdout=subprocess.PIPE,stdin=StringIO('one\ntwo\nthree\nfour\nfive\nsix\n')).communicate()[0] Dostaję: Traceback (most recent call last): File "<stdin>", line 1, in ? File...
Z subprocessmodułem wywołuję różne procesy . Mam jednak pytanie. W następujących kodach: callProcess = subprocess.Popen(['ls', '-l'], shell=True) i callProcess = subprocess.Popen(['ls', '-l']) # without shell Oba działają. Po przeczytaniu dokumentacji dowiedziałem się, że shell=Trueoznacza to...
Chcę używać subprocess.check_output()z ps -A | grep 'process_name'. Próbowałem różnych rozwiązań, ale jak dotąd nic nie działało. Czy ktoś może mi pomóc, jak to
Mój skrypt Pythona używa podprocesu do wywołania bardzo głośnego narzędzia linux. Chcę zapisać wszystkie dane wyjściowe w pliku dziennika i pokazać niektóre z nich użytkownikowi. Myślałem, że następujące działania będą działać, ale dane wyjściowe nie są wyświetlane w mojej aplikacji, dopóki...
Aby uruchomić programy z moich skryptów Python, używam następującej metody: def execute(command): process = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) output = process.communicate()[0] exitCode = process.returncode if (exitCode == 0): return...
Czy istnieje sposób na określenie działającego katalogu poleceń w Pythonie subprocess.Popen()? Na przykład: Popen('c:\mytool\tool.exe', workingdir='d:\test\local') Mój skrypt w języku Python znajduje się w C:\programs\python Czy można uruchomić C:\mytool\tool.exew katalogu D:\test\local? Jak...
Jak odzyskać kod wyjścia, korzystając z subprocessmodułu i communicate()metody Pythona ? Odpowiedni kod: import subprocess as sp data = sp.Popen(openRTSP + opts.split(), stdout=sp.PIPE).communicate()[0] Czy powinienem to robić w inny
Używam skryptu python jako sterownika kodu hydrodynamicznego. Kiedy przychodzi czas na uruchomienie symulacji, używam subprocess.Popendo uruchomienia kodu, zbieram dane wyjściowe ze stdout i stderr do subprocess.PIPE--- następnie mogę wydrukować (i zapisać w pliku dziennika) informacje wyjściowe i...
Chcę wywołać zewnętrzny program z Pythona. Użyłem obu Popen()i call()do tego. Jaka jest różnica między nimi? Moim konkretnym celem jest uruchomienie następującego polecenia z Pythona. Nie wiem, jak działają przekierowania. ./my_script.sh > output Przeczytałem dokumentację i mówi, że...
Próbuję napisać skrypt opakowujący dla programu wiersza poleceń (weryfikacja svnadmin), który będzie wyświetlał ładny wskaźnik postępu operacji. Wymaga to ode mnie możliwości zobaczenia każdego wiersza wyjścia z opakowanego programu, gdy tylko zostanie on wyprowadzony. Pomyślałem, że po prostu...
Próbuję uruchomić program, aby wykonać kilka wywołań systemowych w kodzie Pythona, przy użyciu subprocess.call()którego zgłasza następujący błąd: Traceback (most recent call last): File "<console>", line 1, in <module> File "/usr/lib/python2.7/subprocess.py", line 493, in call...
Muszę asynchronicznie uruchomić polecenie powłoki ze skryptu w języku Python. Rozumiem przez to, że chcę, aby mój skrypt Pythona działał dalej, podczas gdy zewnętrzne polecenie wyłącza się i robi wszystko, co musi. Przeczytałem ten post: Wywołanie polecenia zewnętrznego w Pythonie Potem...