Я пытаюсь настроить скрипт, который смотрит на текущую дату и час, затем помещает его в формат yyyymmdd + 2 цифры. Примером может быть 2015041506. Час должен быть основан на 24-часовом часе.Пытается использовать операторы if для запуска wget
Сценарий затем повторяет дату, а затем запускает wget.
#!/bin/sh
#
# variables
#
basedir1="http://www.ftp.ncep.noaa.gov/data/nccf/com/hur/prod/hur."
#basedir2="http://www.ftp.ncep.noaa.gov/data/nccf/com/hur/prod/hwrf."
date=`date +"%Y%m%d"`
date2=`date +"%Y%m%d" -d "yesterday"`
hour=`date +%H`
#
# main
#
if [ $hour = "7" ]
then
datetime=`${date}06`
echo ${datetime}
url1="${basedir1}${datetime}/"
wget -r -l1 --no-parent -e robots=off -R 'index.*' -A '*.grib.*.grib2' -P /awips2/edex/data/manual/ $url1
elif [ $hour = "13" ]
then
datetime=`${date}12`
echo ${datetime}
url1="${basedir1}${datetime}/"
wget -r -l1 --no-parent -e robots=off -R 'index.*' -A '*.grib.*.grib2' -P /awips2/edex/data/manual/ $url1
elif [ $hour = "19" ]
then
datetime=`${date}18`
echo ${datetime}
url1="${basedir1}${datetime}/"
wget -r -l1 --no-parent -e robots=off -R 'index.*' -A '*.grib.*.grib2' -P /awips2/edex/data/manual/ $url1
elif [ $hour = "1" ]
then
datetime=`${date2}00`
echo ${datetime}
url1="${basedir1}${datetime}/"
wget -r -l1 --no-parent -e robots=off -R 'index.*' -A '*.grib.*.grib2' -P /awips2/edex/data/manual/ $url1
fi
Сценарий не работает.
Итак, что вопрос здесь –
сценарий, кажется, не правильно работает не вторя информацию –
научиться использовать предпочитаемые $ (...) вместо?.. метода back-tick '...' и многого другого - если лучше положить в оператор case. Пример для последующего. –