Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - FTP копирование всех новых PDF файлов

Ответить
Настройки темы
CMD/BAT - FTP копирование всех новых PDF файлов

Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день!

Создал 2 файла

ftp.bat

Код: Выделить весь код
@echo off  
ftp -n -s:C:\1\ftp_cmd.txt results......ru
и ftp_cmd.txt

Код: Выделить весь код
user ЛОГИН
ПАРОЛЬ
bin  
cd /medikament  
get *.pdf
quit
но файлы с ФТП не забирает пишет ошибку 550 в результате выполнения get. - что не правильно пишу???

С сервера удалять я ничего не могу. Там находяться файлы xml и pdf.
Мне надо закачивать только PDF файлы.

Причем надо закачивать только новые, которые я не закачивал в прошлый разы.

И закачивать только те, у которых в имени файла содержаться дважды знаки нижнего подчеркивания "_" причем подряд они идти не могут.
Остальные файлы PDF у которых в имени файла одно "_" не качаем.

Отправлено: 15:15, 03-09-2014

 

Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата Georgio:
Очевидно, проблемы с сервером при использовании встроенного FTP-клиента. »
Цитата LAKERS824:
попробовал на другом ПК, такая же ситуация. »

LAKERS824, лучше попробуйте другой FTP-сервер.

Отправлено: 12:12, 04-09-2014 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


удалось запустить.
создается 1.tmp- где данные для подключения
создается 2.tmp - где список файлов на сервере.
создается 3.tmp - пустой.


Но выдается ошибка

FINDSTR: Не удается считать строки из 3.tmp

Отправлено: 12:24, 04-09-2014 | #12


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


LAKERS824, вот это другое дело. Причина мне известна, поэтому оперативно отредактировал код:


Код: Выделить весь код
:: Изменять в коде можно только знечения переменных.

:: Необходимые для работы пакетного файла временные текстовые файлы будут им созданы и удалены.

@echo off& :: Команда "echo off" обязательна для правильной работы пакетного файла!

set "local_folder=D:\Work\184\results"& :: Задаём папку, в которой находятся уже загруженные файлы, и в которую будут загружаться новые:
set "server=results......ru"
set "login=ЛОГИН"
set "password=ПАРОЛЬ"
set "ftp_folder=/medikament"
set "masks=*.pdf"
set "regular_expression_for_names=^[^_][^_]*_[^_][^_]*_[^_][^_]*\.pdf$"

(
for %%i in ("%login%" "%password%" "cd %ftp_folder%" "ls . 2.tmp" "disconnect" "quit") do echo.%%~i
)>1.tmp
ftp -i -s:1.tmp "%server%"
pushd "%local_folder%"
(
echo $$$
dir /a-d/b "%masks%" 2>nul
)>"%~dp03.tmp"
popd
(
for %%i in ("%login%" "%password%" "cd %ftp_folder%" "bin" "hash") do echo.%%~i
)>1.tmp
for /f "delims=" %%i in ('
 findstr /livxg:3.tmp 2.tmp^| findstr /irc:"%regular_expression_for_names%"
') do echo get "%%i">>1.tmp
for %%i in ("disconnect" "quit") do echo.%%~i>>1.tmp
pushd "%local_folder%"
ftp -i -s:"%~dp01.tmp" "%server%"
popd
for /l %%i in (1 1 3) do del %%i.tmp
echo.
echo Press any key to exit.

pause>nul
exit /b

.

Отправлено: 12:46, 04-09-2014 | #13


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


Georgio, ошибка та же выходит, но теперь 3.tmp не пустой а содержит "$$$"

Отправлено: 13:22, 04-09-2014 | #14


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата LAKERS824:
Но выдается ошибка
FINDSTR: Не удается считать строки из 3.tmp »
Цитата LAKERS824:
ошибка та же выходит, но теперь 3.tmp не пустой а содержит "$$$" »

LAKERS824, ошибка не та же, а другая, но Вы её не озвучили.

Отправлено: 13:52, 04-09-2014 | #15


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


Georgio, FINDSTR: Не удается считать строки из 3.tmp + к этой ошибке 3.tmp не пустой а содержит "$$$"

Отправлено: 13:59, 04-09-2014 | #16


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


LAKERS824, cчитать строки нельзя из пустого файла, а из файла, в котором есть запись "$$$", считать строку можно.

Отправлено: 14:15, 04-09-2014 | #17


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


не понял...может и можно, но ошибка-то вылезает...

Отправлено: 16:02, 04-09-2014 | #18


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
Georgio, FINDSTR: Не удается считать строки из 3.tmp + к этой ошибке 3.tmp не пустой а содержит "$$$"
можете еще раз пояснить? не понял

Отправлено: 08:52, 05-09-2014 | #19


Пользователь


Сообщения: 52
Благодарности: 0

Профиль | Отправить PM | Цитировать


видимо проблема в том, что в именах файлов *.pdf есть кириллица.....никак не могу побороть это..

Отправлено: 15:26, 30-09-2014 | #20



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - FTP копирование всех новых PDF файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Копирование всех файлов с FTP-сервера. iccup.platoon@vk Скриптовые языки администрирования Windows 5 29-11-2013 16:25
.NET - Копирование файлов с ftp. Sadhacker Программирование и базы данных 3 27-05-2012 22:32
CMD/BAT - Ftp копирование файлов и удаление, загрузка новых dvassilyev Скриптовые языки администрирования Windows 2 08-05-2012 15:43
CMD/BAT - Копирование файлов на ftp toddor Скриптовые языки администрирования Windows 1 24-01-2011 11:39
CMD/BAT - Копирование новых файлов Доктор Ливси Скриптовые языки администрирования Windows 1 08-11-2010 12:37




 
Переход