Что касается чтения вещей в переменные, вы просто должны иметь возможность сделать что-то вроде
$output = ps
Это будет захватывать только стандартный вывод, но не подробные потоки, предупреждения или сообщения об ошибках. Вы можете получить код завершения предыдущей команды, протестировав специальную переменную $?
.
Я думаю, что для получения более полного ответа была бы полезна немного больше информации, но, надеюсь, это какой-то путь к тому, что вы ищете.