Я новичок в этом, поэтому, пожалуйста, потерпите меня.
Я пытаюсь использовать команду curl в цикле while-do с небольшим успехом.
Я могу использовать команду curl вне цикла, чтобы получить ответ, но затем, когда он попадает в цикл while, он игнорирует команду curl и придерживается первого вывода в файл, не прерывая цикл, когда это будет сделано.
Команда, которую я запускаю ранее, выводит на веб-страницу значение «2», означающее, что оно завершено, и значения «0,1 или 3» означают, что оно не завершено или произошла ошибка и т. Д.
Поскольку для завершения возврата «2» может потребоваться время, может потребоваться некоторое время, следовательно, цикл.
Значения «0,1,2,3» жестко закодированы и не могут быть изменены.
Код работает, потому что если вы отмените запуск программы, файл будет обновлен, но он не будет виден в цикле. Я застрял в цикле и не могу выйти из него, потому что он не будет пересматривать веб-страницу для поиска " 2"
Любые идеи, пожалуйста
Вот фрагмент кода ниже
curl --location http://$host_name/config-builder-test-app/jobStateResolver?jobId=$jobid > ./jobstate.txt
round=`grep -E "1|0|3" jobstate.txt`
while [ $round ]
do
curl --location http://$host_name/config-builder-test-app/jobStateResolver?jobId=$jobid > ./jobstate.txt
echo "Waiting for confirmation of the completed build:";
sleep 5
done
echo "Successful build for $inputb ID $ID";