Новая страница
По итогу, я всё-таки перемудрил себя... Я думал, что где-то мог затесаться файлик с md5-имеменм файла без цифр, и добавил проверку на буквы...
По итогу вышел скрипт:
#!/bin/bash
# Проверка, были ли переданы файлы через stdin
if [ ! -t 0 ]; then
while IFS= read -r file; do
# Извлекаем имя файла без пути
filename=$(basename "$file")
# Проверяем, соответствует ли имя файла формату md5
if [[ "$filename" =~ ^[0-9a-f]{32}$ ]]; then
result=$(awk '
{
while (match($0, /(\[[0-9]+\]|\{[0-9]+\}|\([0-9]+\)|\<[0-9]+\>)/)) {
printf "%s ", substr($0, RSTART, RLENGTH);
$0 = substr($0, RSTART + RLENGTH);
}
}
' "$file")
# Выводим результат для текущего файла, если что-то было найдено
if [ -n "$result" ]; then
echo "В файле $file найденные последовательности: $result"
fi
fi
done
else
echo "Не переданы файлы через stdin."
exit 1
fi
Который я закинул в base64 и получился скрипт с поиском
find -type f -wholename './*' | bash <(echo "IyEvYmluL2Jhc2gKCiMg0J/RgNC+0LLQtdGA0LrQsCwg0LHRi9C70Lgg0LvQuCDQv9C10YDQtdC00LDQvdGLINGE0LDQudC70Ysg0YfQtdGA0LXQtyBzdGRpbgppZiBbICEgLXQgMCBdOyB0aGVuCiAgICB3aGlsZSBJRlM9IHJlYWQgLXIgZmlsZTsgZG8KICAgICAgICAjINCY0LfQstC70LXQutCw0LXQvCDQuNC80Y8g0YTQsNC50LvQsCDQsdC10Lcg0L/Rg9GC0LgKICAgICAgICBmaWxlbmFtZT0kKGJhc2VuYW1lICIkZmlsZSIpCgogICAgICAgICMg0J/RgNC+0LLQtdGA0Y/QtdC8LCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiDQu9C4INC40LzRjyDRhNCw0LnQu9CwINGE0L7RgNC80LDRgtGDIG1kNQogICAgICAgIGlmIFtbICIkZmlsZW5hbWUiID1+IF5bMC05YS1mXXszMn0kIF1dOyB0aGVuICAgICAgICAgICAgCiAgICAgICAgICAgIHJlc3VsdD0kKGF3ayAnCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKG1hdGNoKCQwLCAvKFxbWzAtOV0rXF18XHtbMC05XStcfXxcKFswLTldK1wpfFw8WzAtOV0rXD4pLykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRmICIlcyAiLCBzdWJzdHIoJDAsIFJTVEFSVCwgUkxFTkdUSCk7CiAgICAgICAgICAgICAgICAgICAgICAgICQwID0gc3Vic3RyKCQwLCBSU1RBUlQgKyBSTEVOR1RIKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICcgIiRmaWxlIikKCiAgICAgICAgICAgICMg0JLRi9Cy0L7QtNC40Lwg0YDQtdC30YPQu9GM0YLQsNGCINC00LvRjyDRgtC10LrRg9GJ0LXQs9C+INGE0LDQudC70LAsINC10YHQu9C4INGH0YLQvi3RgtC+INCx0YvQu9C+INC90LDQudC00LXQvdC+CiAgICAgICAgICAgIGlmIFsgLW4gIiRyZXN1bHQiIF07IHRoZW4KICAgICAgICAgICAgICAgIGVjaG8gItCSINGE0LDQudC70LUgJGZpbGUg0L3QsNC50LTQtdC90L3Ri9C1INC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuDogJHJlc3VsdCIKICAgICAgICAgICAgZmkgICAgICAgICAgICAKICAgICAgICBmaQogICAgZG9uZQplbHNlCiAgICBlY2hvICLQndC1INC/0LXRgNC10LTQsNC90Ysg0YTQsNC50LvRiyDRh9C10YDQtdC3IHN0ZGluLiIKICAgIGV4aXQgMQpmaQ==" | base64 -d)
Он выполнялся о-очень долго, но в итоге оказалось, что я перемудрил, и имён файлов без цифр нет.
Однако когда скрипт почти закончился, Руслан прислал ответ 79061525, я увидел мелькнувшее от него сообщение "Победа", которое было сразу стёрто, а потом появилась отметка в сообщении с заданием.
Этот ответ очень похож, если исключить из моего вывода угловые скобки (подсветил оранжевым)...
Однако где-то в этот момент возникает вопрос: почему-то у Руслана нет цифры из файла ./pacific_ocean/gulf_of_thailand/1a5d8d4e992256ec2f93c434c8467cbb, которая (1), подсветил голубым. Собственно, ответ с этой дополнительной 1 я прислал через 5 минут.
Собственно, вопрос, там точно нигде не пропустилась эта 1? Вариант с тем, что это круглые скобки странен, так как (2) из предыдущего файла в ответе...



