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

Компьютерный форум 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 | Цитировать


Код: Выделить весь код
mget *.pdf

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



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

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


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


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

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


виснет после mget *.pdf и без движения........

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


Ветеран


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

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


Цитата LAKERS824:
виснет после mget *.pdf и без движения........ »
Наверное, большие «*.pdf»?

Отправлено: 16:47, 03-09-2014 | #4


Ветеран


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

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


Два в одном (и заменил ключ "-n" на ключ "-i"):

Код: Выделить весь код
@more +1<"%~f0">.tmp& ftp -i -s:.tmp results......ru& del .tmp& exit
ЛОГИН
ПАРОЛЬ
cd medikament
bin
hash
mget *.pdf
disconnect
quit
.

Отправлено: 18:55, 03-09-2014 | #5


Ветеран


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

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


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

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

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

@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%"
dir /a-d/b "%masks%">"%~dp03.tmp" 2>nul
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

Изменять в коде можно только знечения переменных, выделенные красным цветом.

Отправлено: 05:07, 04-09-2014 | #6


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


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

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


Цитата Iska:
ное, большие «*.pdf»? »
не большие, порядка 60 Кб

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


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


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

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


Georgio,
запустил, вот на чем зависает и далее без движения.


Код: Выделить весь код
...
ftp> cd /medikament
250 CWD command successful.
ftp> ls . 2.tmp
200 PORT command successful.
150 Opening ASCII mode data connection for file list.

Отправлено: 10:34, 04-09-2014 | #8


Ветеран


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

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


LAKERS824, коды пакетных файлов рабочие, сам с их помощью загружал файлы. Очевидно, проблемы с сервером при использовании встроенного FTP-клиента.

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


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


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

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


Georgio, попробовал на другом ПК, такая же ситуация. Также пишет что типа процесс не может получить доступ к файлу....

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



Компьютерный форум 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




 
Переход