Я немного озадачен, но этот фрагмент сценария дает неожиданные результаты. Я получаю, что htmlstring

<!-- <td><a href="https://aeronav.faa.gov/upload_313-d/terminal/DDTPPA_190228.zip"</a>DDTPPA_190228</td> -->

но затем регулярное выражение получает '1901' как цикл, который должен быть невозможен, исходя из начального значения htmlstring. WTF ...

Значения htmlstring и cycle будут меняться с течением времени, но они действительны в течение следующего месяца или около того.

if [ ! -e /tmp/dtpp ]
then
    curl https://www.faa.gov/air_traffic/flight_info/aeronav/digital_products/dtpp/ -o /tmp/dtpp
fi
htmlstring=`grep "DDTPPA" /tmp/dtpp | grep zip |  head -n 2 `
echo $htmlstring
 regex='DDTPPA_([0-9]{4})[0-9]{2}'
[[ $htmlstring =~ $regex ]]
cycle=${BASH_REMATCH[1]}
echo "cycle:"
echo $cycle
extractCycle $htmlstring

Я использую GNU bash, версия 5.0.0(1) -релиз (x86_64-pc-linux-gnu), grep (GNU grep) 3.3, head (GNU coreutils) 8.30.

0