PDA

Показать полную графическую версию : Автоматическое копирование, переименовка и замена файлов


Dembel2002
17-06-2011, 09:32
Доброе время суток.

Возникла необходимость в создании парочки БАТ файлов или програмки с двумя кнопками, а сам я уже всё подзабыл что да как. Поэтому решил попросить у вас помощи.

Идея такая: на сервере лежит файл. Первый БАТ файлик должен скопировать файл с сервера к себе в комп в определённое место и изменить имя этого файла путём вставки в название сегоднешней даты. На этом действия БАТ файла заканчиваются.
Потом после выполнения некоторых манипуляций с этим файлом в ручную, програма создаёт ещё один файл у меня в компе с таким же именем как взяли с сервера до переименовки. Так вот, второй БАТ файл должен этот новый файл положить на сервер и заменить старый файл на новый.

Переименованный файл с сегоднешней датой потом просто отправится в архив.

Знаю что возникает вопрос почему это нельзя зделать ручками, отвечу, не все умеют это делать, а восстанавливать систему после кривых ручек совсем неохото.

Спасибо. Надеюсь что описание понятное. Если есть вопросы - пишите.

lxa85
17-06-2011, 10:16
copy /?
move /?
del /?
echo %date%
echo test > test%date%.txt
dir *.txt

Этого должно хватить для понимания механизмов копирования, переименования файлов.
Готовый скрипт положить в файл *.cmd
Если пишется в блокноте, то Сохранить Как - Фильтр:Все файлы - Название: Script_Name.cmd - Сохранить

Dembel2002
17-06-2011, 11:37
Спасибо, помогло.

Ещё есть один вопросик. Как проверить «одинаковость» файлов после копирования ? Мало-ли во время копирования произошла ошибка.

lxa85
17-06-2011, 12:07
Тут уже похитрее наверно придется.
Либо через fc /? либо надо будет найти и установить программу md5sum, считающую контрольную сумму по алгоритму md5. Скачивать файл, создавать еще одну контрольную сумму и сравнивать с эталонной суммой на сервере.

К чему такая сложность? Файл имеет размерность в сотни мегабайт? Канал связи очень плох? Задачи имеют сверхкритическое значение, а простой недопустим даже в мыслях?
Обычно контрольные суммы прилагаются к большим архивам, например к фильму, образу дистрибутива операционной системы и т.п.
Или идет большой единый файл на пакет программ. Я хочу сказать: "Стоит ли игра свеч?"

Dembel2002
17-06-2011, 12:55
Этот файл является рабочей базой данных и занимает около 600 мб. Каждый день с ней проводят разные манипуляции.

канал связи - это внутренняя сеть. Думаю что если это зделать невозможно без дополнительных программ, то пока обойдёмся.

lxa85
17-06-2011, 13:26
Dembel2002, так у тебя обычный backup что ли? Так бы сразу и сказал. :)
Создавай задание на сервере, пусть получает md5 сумму, копируй файл к себе, и проверяй сумму еще раз.
Если хочется изящно - это либо путная система архивирования данных, либо rsync, ftp, mirror.
Думаю что если это зделать невозможно без дополнительных программ, то пока обойдёмся. »
Там фигня делов, полчаса с чаем и кофе. Будет дополнительный файл. Имя_базы.md5 будет копироваться не один, а два файла. Программа md5sum умеет сопоставлять файлы в директории записям в файле.
Т.ч. не поленись, сделай, потом гораздо проще будет.

Busla
18-06-2011, 19:41
xcopy с параметром V сверяет файлы




© OSzone.net 2001-2012