У меня есть один файл /tmp/test.txt
this is test
that is test
Когда я бегу
[test@localhost]# grep "this is" /tmp/test.txt
this is test
Я получил вывод.
Когда я пытаюсь запустить ту же команду с подпроцессом , я не получил вывод. Также возвращается код 1
.
import subprocess
p = subprocess.Popen(['grep', '"this is"', '/tmp/test.txt'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
print p.communicate ()
('', '')
# Command exit code.
print p.poll()
1
Я также проверяю ответы Подпроцесс Python Grep в этом и пробовал shell=True
, но это не работает.
Мне не хватает поместить что-то в подпроцесс, чтобы получить вывод, но что я не знаю: (.