在 bash 脚本中,我想要发出一个用户不应打扰的 curl 请求。
trap "cleanup" 1 2 3 13 15
TMP_OUT=$(curl -H "Content-Type: application/json" -X POST -d "$DATA" "${HOST}:${PORT}"'/main/store' 2>/dev/null &)
wait $!
if [ $? -ne 0 ]
then
fatal "Something went wrong connecting to the service."
fi
当服务不工作时,我该如何让它工作?0
即使 curl 请求的 rc 是7
并且脚本继续,等待也会返回,这不应该发生。
答案1
尝试这样的操作:
TMP="$(mktemp)"
curl ifconfig.co 2>/dev/null >"${TMP}" &
wait $!
echo $?
read MY_IP < "${TMP}"
rm "${TMP}"
unset TMP
echo ${MY_IP}
从根本上来说,你需要将有趣的过程作为“这“ 壳。
在这里我们将其输出重定向到一个临时文件,然后使用来提取它read
。