Запитання з тегом «popen»

8
Підпроцес Python / Popen з модифікованим середовищем
Я вважаю, що запуск зовнішньої команди з дещо зміненим середовищем - дуже поширений випадок. Ось як я це прагну: import subprocess, os my_env = os.environ my_env["PATH"] = "/usr/sbin:/sbin:" + my_env["PATH"] subprocess.Popen(my_command, env=my_env) У мене кишка відчуває, що є кращий спосіб; це добре виглядає?
285 python  subprocess  popen 

1
Як я можу вказати робочий каталог для popen
Чи є спосіб вказати запущений каталог команд у Python's subprocess.Popen() ? Наприклад: Popen('c:\mytool\tool.exe', workingdir='d:\test\local') Мій сценарій Python розміщений у C:\programs\python Чи можливо запустити C:\mytool\tool.exeв каталозі D:\test\local? Як встановити робочий каталог для підпроцесу?
187 python  subprocess  popen 

2
Яка різниця між підпроцесом Popen і викликом (як я можу їх використовувати)?
Я хочу зателефонувати до зовнішньої програми від Python. Я використав і те, Popen()і call()це зробити. Яка різниця між ними? Моя конкретна мета - запустити наступну команду з Python. Я не впевнений, як працюють перенаправлення. ./my_script.sh > output Я читаю документацію, і там написано, що call()це зручність або функція швидкого доступу. …
178 python  subprocess  popen 

3
Як використовувати підпроцес popen Python
Оскільки os.popen замінюється subprocess.popen, мені було цікаво, як би конвертувати os.popen('swfdump /tmp/filename.swf/ -d') до subprocess.popen () Я намагався: subprocess.Popen("swfdump /tmp/filename.swf -d") subprocess.Popen("swfdump %s -d" % (filename)) # NOTE: filename is a variable # containing /tmp/filename.swf Але я здогадуюсь, я не правильно це пишу. Будь-яка допомога буде вдячна. Дякую
102 python  subprocess  popen 

4
Чому Popen.communicate () повертає b'hi \ n 'замість "hi"?
Хтось може пояснити, чому перед результатом, який я хочу, «привіт», стоїть буква «b», а потім новий рядок? Я використовую Python 3.3 >>> import subprocess >>> print(subprocess.Popen("echo hi", shell=True, stdout=subprocess.PIPE).communicate()[0]) b'hi\n' Це зайве "b" не з'являється, якщо я запускаю його за допомогою python 2.7

3
Чи можна запустити функцію в підпроцесі без створення потоків або написання окремого файлу / сценарію.
import subprocess def my_function(x): return x + 100 output = subprocess.Popen(my_function, 1) #I would like to pass the function object and its arguments print output #desired output: 101 Я знайшов лише документацію щодо відкриття підпроцесів за допомогою окремих сценаріїв. Хтось знає, як передавати функціональні об'єкти або навіть простий спосіб передавати …

7
Команда Python popen. Зачекайте, поки команда не буде закінчена
У мене є скрипт, де я запускаю команду оболонки popen. Проблема полягає в тому, що скрипт не чекає, поки ця команда popen буде закінчена, і відразу ж продовжується. om_points = os.popen(command, "w") ..... Як я можу сказати своєму сценарію Python чекати, поки команда оболонки не закінчиться?
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.