Получить вывод команды в переменную (не работает с каналами, ..) - PullRequest
0 голосов
/ 17 июня 2019

Я пытаюсь получить выходные данные команды, чтобы я мог видеть, является ли это ошибкой или нет, по какой-то причине выходные данные не хотят сохранять в переменной или в канале чтения.

Я пробовал несколько методов, но я действительно не смог получить этот вывод

run() {
        runOutput=$(timeout 2 mcrcon -c -H $HOST -P $PORT -p $PASSWORD "$1")
        exit_status=$?
        if [[ $exit_status -eq 124 ]]; then
                #status off, no other data
                exit 1
        fi
}


так просто, если вы поставите if с runOuput, он должен войти в if и остановить программу, но в настоящее время он просто ничего не делает и команда показывает после (здесь я сохраняю его в runoutput, а здесь - экран)

Код для проверки:

timeout 2 mcrcon -H $HOST -p $PORT -P $PASSWORD "/players" | read test
echo "test $test testhja"

Результат: https://i.imgur.com/IsG3zJW.png

Я хочу просто получить вывод этой команды в переменную

(я использую эту программу для выполнения rcon https://github.com/IIPoliII/mcrcon)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...