Модуль подпроцесса Python намного медленнее команд (не рекомендуется)

Поэтому я написал сценарий, который обращается к группе серверов с помощью nc в командной строке, и первоначально я использовал модуль команд Python и вызывал command.getoutput (), и сценарий выполнялся примерно через 45 секунд. Поскольку команды устарели, я хочу изменить все на использование модуля подпроцесса, но теперь сценарию требуется 2m45s для запуска. У кого-нибудь есть идея, почему это будет?

Что у меня было раньше:

output = commands.getoutput("echo get file.ext | nc -w 1 server.com port_num")

Теперь у меня есть

p = Popen('echo get file.ext | nc -w 1 server.com port_num', shell=True, stdout=PIPE)
output = p.communicate()[0]

Заранее спасибо за помощь!

Ответы на вопрос(2)

Ваш ответ на вопрос