Значит задача такая! Есть строка вида /home/pupkin/soft/update[0-9]_[0-9a-zA-Z]/и т.д. (вместо того,что в скобках подразумевается число на первой позиции и число или буква на второй)
вот написан скрипт для синхронизации на несколько вэб серверов этих апдейтов но только для ручного апдейта. В старые версии тоже иногда вносяться изменения (там всякие очепятки в ленгвич файлах, конфигах, доке). Апдейтов стало много и как-то хочется автоматизировать(чтоб перл сам перебирал значения в квадр скобках и скачивал измененные файлы). Дык вот не получается перебор что только не делал немогу допереть как.
Может кто делал такое подскажите!!!!!Заранее благодарю!
не совсем понятно, что нужно сделать.
если просто следить за тем, какие файлы появились новые, какки изменились и их применять, то можно сделать так: perl скрипт держит в *dbm базе соответствия '[имя файла] => [его md5 дайджест]'. каждый раз когда скрипт запускпется, он смотрит, если файла в базе нет - применяем, если есть - вычисляем его md5-digest, сравниваем стем, что в базе, если отличается - применяем, и кладём в базу новое md5-значение.
я только не понимаю, при чём здесь регулярные выражения?
>не совсем понятно, что нужно сделать.
>если просто следить за тем, какие файлы появились новые, какки изменились и их применять, то можно сделать так: perl скрипт держит в *dbm базе соответствия '[имя файла] => [его md5 дайджест]'. каждый раз когда скрипт запускпется, он смотрит, если файла в базе нет - применяем, если есть - вычисляем его md5-digest, сравниваем стем, что в базе, если отличается - применяем, и кладём в базу новое md5-значение.
>я только не понимаю, при чём здесь регулярные выражения?
ну с md5 все понятно тока вот смотри что нужно!
есть сервер типа server(root) на нем update0_a update1_b update9_A и вдруг появляется папка с новым апдейтом типа update9_B & update9_C вот чтоб скрипт и в них заглянул и посмотрел у себя такие папки и соотв если их нет то скачал к себе! Смысл регекспа в том чтоб скрипт сам перебрал все названия папок от update0_0 до update9_Z и сам закачал все апдейты от измененных файлов в сущесвующих апдейтах до появившихся новых апдейтов.
а если просто rsync использовать?
>а если просто rsync использовать?
Можно наверна и так, но скрипт то есть, просто в него нада вставить нескака строк и все.
А с рсюнком все сложнее! Сервера то на которые идет синхронизация не мои и наверняка хозяева тех серверов согласятся на такой шаг.........
список диров можно забрать так:
@dirs=glob("update[A-Z0-9]_[A-Z0-9]")
а дальше уже их обрабатывать.
Я правильно понял?
>список диров можно забрать так:
>@dirs=glob("update[A-Z0-9]_[A-Z0-9]")
>а дальше уже их обрабатывать.
>Я правильно понял?
Хм ща попробую!!! Сразу подставить строку из базы а не парсить ее (я парсил на наличие [] и пытался из них выдрать границы перебора).