[Скрипт] Копирование файлов по сети с проверкой

markos

Супер-модератор
Команда форума
Регистрация
21 Июл 2008
Сообщения
4,389
Реакции
4
Баллы
38
Адрес
Планета Земля
Комрады нужна ваша помощь (вознаграждение обсуждаемо =) ). Есть задача переноса файла по сети, но есть беда - канал не всегда стабилен (беда в области с нэтом). поэтому возникла идея создания скрипта для проверки файла (чексуммы) после копирования с логированием(хотя можно и без). объяснять женщинам как в тоталкомандере проверять суммы файла бесполезно. есть идеи как реализовать проверку целостности файла?

цель: нажала на кнопку - файл скопировался, проверился, выдало сообщение что всё ок или файл битый и нужно повторить процедуру

вот начало скрипта (через робокопи):
@Echo off
:: ( путь откуда, без кавычек)
set $from=_ПУТЬ_ОТКУДА_
:: ( куда, без кавычек )
set $dest=_КУДА_
::
set $log=_ПУТЬ_ЛОГ_ФАЙЛА\copyfile.log
for /f "delims=" %%i in ('dir "%$from%" /B/A:-D') do Call :CheckLog "%%i"
:CheckLog
If Exist "%$log%" For /f "delims=" %%a in (%$log%) Do If "%%a"=="%~1" Exit /B
robocopy "%$from%" "%$dest%" "%~1" /minage:0
if %errorlevel%==1 (echo.Copy is successful - %~1&echo.%~1>>"%$log%")

создавать трекер не предлагать))))

з.ы.
MINAGE нужен для того чтобы исключить файлы, которые сегодня уже копировались
 
Последнее редактирование:

j2me

Заблокирован
Регистрация
23 Апр 2009
Сообщения
24,449
Реакции
26
Баллы
0
Адрес
Архангельская область: доска, треска и тоска
Использовать консольную утилиту для вычисления MD5 || SHA1 на отправляющей и принимающей сторонам. Хотя TCP/IP и так протокол с проверкой достоверности данных.
 

markos

Супер-модератор
Команда форума
Регистрация
21 Июл 2008
Сообщения
4,389
Реакции
4
Баллы
38
Адрес
Планета Земля
нене.. пакеты иногда "теряются" и файл битым "приходит".. Олег, через консоль женщинам не вариант(( им надо через "кнопку"

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

KISS

Well-known member
Регистрация
21 Июл 2009
Сообщения
21,391
Реакции
40
Баллы
48
Адрес
Архангельска
в винраре есть функция восстановления архива! послал архивчик, восстановил архивчик, все счастливы! :gg:
 

markos

Супер-модератор
Команда форума
Регистрация
21 Июл 2008
Сообщения
4,389
Реакции
4
Баллы
38
Адрес
Планета Земля

спасибо, посмотрю

в винраре есть функция восстановления архива! послал архивчик, восстановил архивчик, все счастливы! :gg:

тётенькам это не надо((( они боятся лезть дальше "мойкомпьютер" и "1с" .. я тоже думал над этим, но не вариант.. всё равно спасибо)
 
Последнее редактирование:

sale

Active member
Регистрация
24 Янв 2010
Сообщения
4,226
Реакции
21
Баллы
38
Адрес
Арх,Новск
спасибо, посмотрю

оч удобная штука, синкает файлы/папки с компа на комп без центр. сервера по p2p, пробивает nat без проблем, данные при передаче с клиента на клиент шифруются, бесплатный, вобщем то что надо :)
 

markos

Супер-модератор
Команда форума
Регистрация
21 Июл 2008
Сообщения
4,389
Реакции
4
Баллы
38
Адрес
Планета Земля
да, штука удобная выходит.. буду пробовать.. благодарю сударь)))
 

SeMpRoN

Active member
Регистрация
5 Ноя 2008
Сообщения
17,721
Реакции
10
Баллы
38
Адрес
г. Северодвинск проспект
сервера нет, даже оплачивать не надо, скорее на рекламе живот, в торренте же запустили рекламу, и платную версию, но также сохранив бесплатную
 

markos

Супер-модератор
Команда форума
Регистрация
21 Июл 2008
Сообщения
4,389
Реакции
4
Баллы
38
Адрес
Планета Земля
в общем битом вариант несколько не выходит.. почему-то не пробивается через шлюз.. порты открыл, пути прописаны.. не синхронизируются папки .. права прописаны.. хотя я.диск заработал.. на нём попробую по-тренироваться..
 

smash_TeAm™

Member
Регистрация
31 Авг 2008
Сообщения
720
Реакции
1
Баллы
18
Адрес
внутримкадыш
markos, а варик с wget'ом, пусть и виндовым на принимающей строне не вариант?
 

sale

Active member
Регистрация
24 Янв 2010
Сообщения
4,226
Реакции
21
Баллы
38
Адрес
Арх,Новск
в общем битом вариант несколько не выходит.. почему-то не пробивается через шлюз.. порты открыл, пути прописаны.. не синхронизируются папки .. права прописаны.. хотя я.диск заработал.. на нём попробую по-тренироваться..

очень странно, отлично работает за натом без проброса портов, как вариант попробуй уменьшить в настройках folder_rescan_interval это через какое время проверять папку на новые файлы, по умолчанию 600 секунд стоит
 
Регистрация
20 Сен 2010
Сообщения
1,424
Реакции
1
Баллы
0
Адрес
Arkhangelsk
вот начало скрипта (через робокопи):
pscp, psftp в скрипте и ssh-сервер на другом конце задействовать как вариант? кривых файлов приезжать не должно imho. ну и таки сначала скриптом вычислять хеш в текстовик, отправлять его вместе с нужными файлами и на сервере сверять хеш по приложенному текстовику.... это в плане серьезной паранойи по потере данных
 
Сверху