я хочу знать, как мы можем получить вывод команды в переменную в БашБаш как получить вывод команды асинхронной к переменной
вот мой код
#!/bin/bash
opt="svcrack -v -u100 -r1-9999 -z3 10.0.0.1"
opt2="$($opt)"
echo "myout output $opt2"
выход
myout output
не работающая внутри функции: (
function zwork(){
opt=$(svcrack -v -u100 -r1-9999 -z3 10.0.0.1 2>&1)
echo "myout output $opt"
}
out=$(zwork)
Я не вижу ничего асинхронного в сценарии. Если это результат, который вы получаете, ваша команда просто не имеет выхода на stdout. – 4ae1e1
у него есть выход, svcrack - скрипт python –
Я сказал, что нет выхода на stdout. Судя по вашему комментарию «это сработало» ниже, вывод находится на stderr, что не противоречит моему диагнозу. Но вы должны видеть вывод на stderr, тем не менее, если вы используете точный скрипт, как указано выше, в интерактивной оболочке. – 4ae1e1