Из того, что вы говорите, я не вижу доказательств того, что программа MS захватывает стандартный вывод внешнего инструмента :Если стандартный вывод появляется в терминале, который запустил программу MS («Вместо этого вывод программы Linux отображается в окне консоли, из которой я запускал программу Windows». ), то это указывает на то, что внешняя программа наследует стандартный вывод от своего вызывающего.
Вам нужно найти способ в вашей программе MS заставить ее считывать данные. Посмотрите, какие у него есть опции: