Передача stdout и stderr внутри правила Makefile

Я хочу направить вывод скрипта в другую программу. Что-то, что я обычно делаю, используя эти две формы:

 python test.py 2>&1 | pyrg
 python test.py |& pyrg

Моя проблема в том, что это не работает внутри make-файла:

[Makefile]
test:
    python test.py 2>&1 | pyrg [doesn't work]

Я хочу избежать написания файла сценария, который выполняет эту работу.

Изменить:

Это похоже на проблему pyrg:

python test.py 2>&1 | tee test.out // Writes to the file both stderr and stdout
cat test.out | pyrg                // Works fine!
python test.py 2>&1 | pyrg         // pyrg behaves as if it got no input

Это плохое решение для меня, так как я никогда не доберусь до части catв случае сбоя теста (все находится внутри правила Makefile)

18
задан Xyand 11 June 2019 в 09:40
поделиться