LINUX.ORG.RU

[Тупак] Парсить вывод интерактивного bash

 


0

1

Задача - автоматизировать интерактивные утилиты, которые иногда еще спрашивают что-то на ввод. Еще например скрипты, которые еще внутри интерактивный запускают bash, мол вот тебе environment, работай. As best as I can.

Хак конечно, но пока я запускаю команды так

mycommand; echo "END" OF COMMAND $?

В итоге получаю на вход парсеру

bash> mycommand; echo "END" OF COMMAND $?
my command line 1
my command line 2
END OF COMMAND 0
bash>

И разбираю то что получилось, валидирую возможные ошибки. Есть вполне однозначные ограничители вывода програмы. Возможно кто-то подкинет не такой откровенный тупак?

★★★★★

Последнее исправление: vertexua (всего исправлений: 3)

Ответ на: комментарий от sdio

Как оно работает из под винды, на которой вообще не стоят подобные вещи? Пока что это pure-java утилита, которая с помощью Scala dsl работает с удаленными тачками по pure-java ssh, почти как человек. Тачки о утилите вообще не знают. Кроме странноватых echo END OF COMMAND

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

vertexua> Как оно работает из под винды,

как поставишь так и работает
в составе ActiveTCL он (expect) есть

sdio ★★★★★
()
Ответ на: комментарий от vertexua

Я вообще спрашивал о алгоритме, может какая-то фишка bash. Установка софта у нас очень огорожена

vertexua ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Бюрократия мешает переписать велосипедоинтерактивные скрипты, потому мимикрирую свои скрипты под человека

vertexua ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.