Вы можете перенаправить вывод в файл ошибок sdterr на дескрипторе файла 2, используя> & 2
пример:
# print a log a message
log ()
{
echo "Log message: $1" >&2
}
get_animals()
{
log "Fetching animals"
echo "cat dog mouse"
}
values=`get_animals`
echo $values
`` принимает только вывод на stdout, а не на stderr,Консоль, с другой стороны, отображает оба.
Если вы действительно хотите получить сообщение журнала на стандартный вывод, вы можете перенаправить ошибку обратно на стандартный вывод после присвоения переменной:
# print a log a message
log ()
{
echo "Log message: $1" >&2
}
get_animals()
{
log "Fetching animals"
echo "cat dog mouse"
}
values=`get_animals` 2>&1
echo $values