На самом деле парсинг годится только для ПО, вывод которого в консоль заранее известен + сложности с парсингом локализаций - в разных локалях разный вывод в консоль.
При этом нельзя на каждый запрос терминала на ввод писать пароль root, нельзя и реагировать на слово Password чтобы его писать - это будет дыра в безопасности.
В xroot я анализирую весь text, пишущийся в терминал, а пароль root хоть и пишу в него, но меняю на звёздочки. Да, у меня парсинг, но я приспособил модуль gnugettext, написав к нему патчи чтобы парсинг был точнее и по разным локалям.