Está pensando demasiado en las cosas y es posible que no esté al tanto de algunas funciones -integradas quebash
(que, dado que no está especificando, supondré que su shell )proporciona:
retries=0
timeout=90
duration=0
complete=0
maxretries=3
while [[ 0 -eq "$complete" ]]; do
curl -K $conf/appdCurlConfig $prodc $base1d $base3d $base1w $base2w -o $prodCurl -o $base1dCurl -o $base3dCurl -o $base1wCurl -o $base2wCurl &
curlpid=$! # capture PID of curl command
while [[ "$timeout" -gt "$duration" ]] && kill -0 $curlpid 2> /dev/null; do
sleep 1
duration=$((duration+1))
case $duration in
3)
echo "It's taking a bit longer.."
;;
30|45|75)
echo "It's taking a real long time but we'll keep waiting"
;;
85)
echo "We're about to give up"
;;
$timeout)
echo "We're giving up."
kill -TERM $curlpid
retries=$((retries+1))
if [[ "$retries" -ge "$maxretries" ]]; then
complete=1
fi
;;
esac
done
if wait $curlpid; then
complete=1 # curl returned non-error; we're done!
fi
done
kill -0
enviará una señal nula; se puede usar para ver si un proceso realmente existe sin afectarlo realmente. El shell capturará el PID de una tarea en segundo plano en $!
. Y su escalera if..elif
es un ejemplo de libro de texto de algo que colapsa en una declaración case..esac
.
Вы пытались присоединиться к своему домену с пользователем myuser
? Это не сработает, так как у вашего пользователя нет необходимых прав для добавления компьютеров в ваш домен. Вы пробовали это с пользователем Administrator
, как показано здесь?
Как уже упоминал Raman, вы также хотите убедиться, что в вашем домене еще нет машины с именем DELL-INSIPRON
, но я предполагаю, что это не так.