#bash #shell #curl #cron
Вопрос:
Я бы запустил сценарий .sh для выполнения операции с сервера только в том случае, если указан указанный URL-адрес. URL-адрес, по которому я ежедневно получаю обновления данных (но я точно не знаю, в какое время они обновляются).
Задание cron будет запускать этот сценарий каждые пять минут, и как только появится обновленный URL-адрес, он запустит Rscript. Я не знаю, завиток или баш достаточно, чтобы обновить дату в соответствии с системой.
Я подумал о том, чтобы написать код в BASH, который выглядел бы так :
if curl -s --head --request GET https://example.com-2021-05-10 | grep "200 OK" > /dev/null; then
Rscript ~/mybot.R
else
echo "the page is not up yet"
fi
Ответ №1:
Просто используйте date
команду.
if curl -s --head --request GET https://example.com-$(date ' %Y-%M-%d') | grep "200 OK" > /dev/null; then
Rscript ~/mybot.R
else
echo "the page is not up yet"
fi