Попробуйте что-то вроде этого:
TMP="$(mktemp)" curl ifconfig.co 2>/dev/null >"$" & wait $! echo $? read MY_IP < "$" rm "$" unset TMP echo $
По сути, вам нужно сохранить интересный процесс как прямое потомство « этой » оболочки.
Здесь мы перенаправляем его вывод во временный файл и принимаем его позже, используя read
.