Я хочу использовать оболочку для вызова скрипта на удаленном сервере. Я хотел бы захватить выходные данные этого скрипта (его сообщения журнала) и код завершения, который он возвращает.
Если я сделаю это:
ssh user@server /usr/local/scripts/test_ping.sh
echo "$?"
Я получил код выхода, но не могу перехватить сообщения удаленной регистрации.
Если я сделаю это:
local RESULTS=$(ssh user@server /usr/local/scripts/test_ping.sh)
echo "$?"
LOG "${RESULTS}";
Я могу записать свой вывод, используя мою функцию LOG, но не могу получить правильный код завершения, я предполагаю, что полученный код - это код из присваиваемого переменной.
Я хотел бы продолжать использовать мою функцию LOG для захвата всех выходных данных, поскольку он форматирует и отправляет вещи в файл, системный журнал и экран для меня.
Как я могу получить результаты в переменной И получить правильный код завершения из удаленного сценария?