|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Скрипт копирующий из ftp телефона только новые файлы, нужна помощь !!! |
|
CMD/BAT - Скрипт копирующий из ftp телефона только новые файлы, нужна помощь !!!
|
Новый участник Сообщения: 6 |
Здравствуйте уважаемые форумчане !!!
Озадачился проблемой бекапа фоток с телефона, суть в том что в определенное время телефон запускает ftp сервер а домашний компьютер должен зайти на него и скачать там новые появившиеся файлы фото\видео. Я нашел скрипт который делает все наоборот он может строить список файлов в двух папках и сравнивать их и недостающие файлы в папке ftp он кидает файлы с компа. Но мне нужно наоборот чтобы на комп скидывались недостающие файлы с ftp на телефоне. Подскажите пожалуйста что переделать в нем ???? @echo on chcp 1251 set SOURCE_FILES="D:\bacups4mini\Camera1\*.*" set DEST_FOLDER="//Camera" set DEST_SERVER=192.168.0.101 2121 set USERNAME=anonymous set USERPASS= rem Составление списка команд для получения списка файлов на ftp echo open %DEST_SERVER%>ftp_cmd.tmp echo %USERNAME%>>ftp_cmd.tmp echo %USERPASS%>>ftp_cmd.tmp echo cd %DEST_FOLDER%>>ftp_cmd.tmp echo ls>>ftp_cmd.tmp echo close>>ftp_cmd.tmp echo bye>>ftp_cmd.tmp rem Получение списка файлов. rem for нужен, чтобы вычистить из протокола все, кроме списка файлов for /f "tokens=* delims=" %%i in ('ftp -s:ftp_cmd.tmp') do call :clearlist "%%i" rem Составление списка команд для отправки файлов на ftp echo open %DEST_SERVER%>ftp_cmd.tmp echo %USERNAME%>>ftp_cmd.tmp echo %USERPASS%>>ftp_cmd.tmp echo cd %DEST_FOLDER%>>ftp_cmd.tmp echo binary>>ftp_cmd.tmp rem Собственно список файлов формируется здесь for %%i in (%DEST_FOLDER%) do call :findfile "%%i" rem Завершение списка команд для отправки файлов на ftp echo close>>ftp_cmd.tmp echo bye>>ftp_cmd.tmp pause rem Собственно отправка, протокол идет на консоль ftp -s:ftp_cmd.tmp rem Удаление временных файлов ::del ftp_cmd.tmp ::del ftp_files.tmp goto eof :findfile find /i "%~n1%~x1" ftp_files.tmp>nul if %errorlevel% == 1 echo put %1>>ftp_cmd.tmp goto eof :clearlist for /f "tokens=1,2* delims= " %%j in (%1) do if "%%j" == "226" set filemode= if not "%filemode%" == "yes" goto next echo %1>>ftp_files.tmp :next for /f "tokens=1,2* delims= " %%j in (%1) do if "%%j" == "150" set filemode=yes :eof |
|
Отправлено: 01:52, 14-06-2014 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать Цитата Striker1000:
Цитата Striker1000:
@echo off& :Команда "echo off" обязательна! rem Подставить в значения переменных свои данные! set $#@1_server=open ftp.opera.com set $#@2_user=anonymous rem В случае наличия пароля вставить его между кавычек вместо символа процента! set $#@3_password="%" set $#@4_ftp_folder=cd "pub/opera/win/1216/int" set "local_folder=C:\Users\1\AppData\Local\Temp\Work\537" (for /f "tokens=1* delims==" %%i in ('set $#@') do echo.%%~j)>ftp_cmd.tmp (for %%i in ("ls . ftp_lst.tmp" close bye) do echo %%~i)>>ftp_cmd.tmp ftp -s:ftp_cmd.tmp chcp 1251>nul dir /a-d /b "%local_folder%">cmp_lst.tmp chcp 866>nul findstr /ilvxg:"cmp_lst.tmp" "ftp_lst.tmp">ftp_new.tmp (for /f "tokens=1* delims==" %%i in ('set $#@') do echo.%%~j)>ftp_cmd.tmp echo lcd "%local_folder%">>ftp_cmd.tmp (for %%i in (binary hash) do echo %%i)>>ftp_cmd.tmp (for /f "usebackq delims=" %%i in ("ftp_new.tmp") do echo get "%%i")>>ftp_cmd.tmp (for %%i in (close bye) do echo %%i)>>ftp_cmd.tmp ftp -s:ftp_cmd.tmp rem Удаление временных файлов "закомментировано": могут пригодиться для "разбора полётов"! :del cmp_lst.tmp ftp_cmd.tmp ftp_lst.tmp ftp_new.tmp exit /b |
||
Отправлено: 18:00, 14-06-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Georgio, Огромное тебе Человеческое СПАСИБО !!!! Я всю голову сломал экспериментируя со старым скриптом, а ты мне так помог )))) Спасибо тебе !!!!! Все работает на Ура еще и с отчетами ваще класс !!!
|
Отправлено: 18:48, 14-06-2014 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - Нужна помощь! Требуется скрипт программы. | burunduk74 | Скриптовые языки администрирования Windows | 3 | 07-05-2014 10:29 | |
CMD/BAT - [решено] Батник копирующий из папок в сети файлы в одну | Nenomernoj | Скриптовые языки администрирования Windows | 11 | 16-01-2012 18:23 | |
[решено] Новые элементы панели управления! Нужна помощь! | LP92 | Автоматическая установка Windows 2000/XP/2003 | 2 | 16-07-2010 14:23 | |
[решено] Скрипт копирующий всю информацию из свойст ПК | Centrinar | AutoIt | 2 | 19-04-2010 11:58 | |
FTP/File - FTP команды докачка нужна помощь | Ячсмит Йцукенгович | Сетевые технологии | 2 | 23-07-2009 20:56 |
|