|   |   | 
| 
 | Автотправка файлов на ftp сервер | ☑ | ||
|---|---|---|---|---|
| 0
    
        Coldboy 17.09.13✎ 15:28 | 
        Здравствуйте. Хочу организовать отправку файлов из одной папки, для последующей обработки на ftp сервер, думаю сделать через .bat и планировщик заданий. Проблема, не знаю как написать этот .bat и как сделать после успешной отправки удалять файл. Или же есть вариант по проще? Подскажите, кто имел опыт или есть идеи.. Заранее спасибо.     | |||
| 1
    
        Прыгун 17.09.13✎ 15:30 | 
        любой учебник по bat файлам найди в интернете.     | |||
| 2
    
        Dmitrith 17.09.13✎ 15:31 | 
        Все спокойно через стандартные команду DOS реализуется. Отправка/прием на фтп через консольную ftp.exe     | |||
| 3
    
        v4442 17.09.13✎ 15:34 | 
        (0) сейчас найду пример
 (1) (2) ....... | |||
| 4
    
        Coldboy 17.09.13✎ 15:36 | 
        (2) по точнее
 (3) спасибо заранее | |||
| 5
    
        v4442 17.09.13✎ 15:37 | 
        текст батника 
 @echo off set i=%date:~-10% chcp 1251 Del C:\Auto.prm echo [General] >> C:\Auto.prm echo AutoExchange=1 >> C:\Auto.prm echo Quit=1 >> C:\Auto.prm echo [AutoExChange] >> C:\Auto.prm echo SharedMode=1 >> C:\Auto.prm echo ReadFrom=* >> C:\Auto.prm echo WriteTo=* >> C:\Auto.prm ftp -n -s:C:\obmen\get_G2008.txt "C:\Program Files\1Cv77\BIN\1cv7s.exe" CONFIG /D "\\Baza1" /NАдмин /P111 /@C:\Auto.prm ftp -n -s:C:\obmen\put_G2008.txt | |||
| 6
    
        Coldboy 17.09.13✎ 15:39 | 
        а комментарии можно хоть какие нибудь?     | |||
| 7
    
        Coldboy 17.09.13✎ 15:39 | 
        файлы заранее неизвестны имена, тока папка.     | |||
| 8
    
        v4442 17.09.13✎ 15:40 | 
        файл put
 open FTP.NASH.ru //сервер FTP user uaser1 //это юзер 12323 //это пароль prompt binary cd upload_2008 lcd "\\BAZA1c\PC" put APPF.zip bye | |||
| 9
    
        v4442 17.09.13✎ 15:42 | 
        файл get
 open FTP.NASH.ru //сервер FTP user uaser1 //это юзер 12323 //это пароль prompt binary lcd "\\BAZA1c\CP" cd download_2008 get APPE.zip | |||
| 10
    
        Coldboy 17.09.13✎ 15:42 | 
        (8) а это че? уже заливка на сервер?     | |||
| 11
    
        v4442 17.09.13✎ 15:43 | 
        значит звездочки 
 put * | |||
| 12
    
        v4442 17.09.13✎ 15:44 | 
        (10) на всякий случаи и туда и обратно ))     | |||
| 13
    
        v4442 17.09.13✎ 15:45 | 
        и с разу с привязкой к 1с )))  77     | |||
| 14
    
        Галахад гуру 17.09.13✎ 15:54 | 
        Как сложно-то. А почему ftp?     | |||
| 15
    
        v4442 17.09.13✎ 15:57 | 
        (14) много букв из-за 1с, без нее будет мало и очень понятно )))     | |||
| 16
    
        v4442 17.09.13✎ 16:00 | 
        + 15 
 Создаешь батник, в батнике одна строчка: ftp -s:c:\1.txt в фале 1.txt чуть больше строк open FTP.NASH.ru //сервер FTP user uaser1 //это юзер 12323 //это пароль prompt binary lcd "\\BAZA1c\CP" cd download_2008 get APPE.zip | |||
| 17
    
        spectre1978 17.09.13✎ 16:50 | 
        Нужен FTP-клиент
 Набор утилит NcFTP реализует возможность удаления в случае успешной отправки. Очень рекомендую. | |||
| 18
    
        v4442 17.09.13✎ 17:03 | 
        (17) бывает они глючат,  использовал , но отказался от них.     | |||
| 19
    
        spectre1978 17.09.13✎ 21:58 | 
        (18) можно поподробнее? Я использовал следующий функционал:
 - прием: сравниваем по маске содержимое удаленной папки с локальной, недостающие в локальной папке файлы качаем из удаленной. - передача: пытаемся выгрузить файлы по маске из локальной папки в удаленную. Файлы, которые загрузились успешно, из локальной папки удаляются. Файлы, которые успешно не загрузились, остаются в локальной папке для того чтобы попытаться их выгрузить в следующий раз. Работает полтора месяца, глюков пока не видел | |||
| 20
    
        Asmody 17.09.13✎ 22:07 | 
        Пацаны советуют btsync     | |||
| 21
    
        v4442 17.09.13✎ 22:26 | 
        (19) Когда поменяли сервер ftp то с некоторых филиалов filezilla  не смог достучаться, через bat все работало.     | |||
| 22
    
        v4442 17.09.13✎ 22:29 | 
        + 21 и еще через bat почему-то работает намного быстрее.
 Еще были глюки с большими файлами из-за тормознутости, через bat нет. | |||
| 23
    
        spectre1978 18.09.13✎ 08:01 | 
        (21) Так мы ж вроде про ncftp говорили. Причем тут filezilla?     | |||
| 24
    
        Coldboy 18.09.13✎ 09:09 | 
        (22) 1С не нужна, она уже на сервере все обрабатывает, мне бы эти файлы забрать грамотно и аккуратно, не понял, как циклично в каталоге брать файлы и закидывать их.     | |||
| 25
    
        spectre1978 18.09.13✎ 09:13 | 
        (24) у FTP-клиентов есть команды mget и mput, они работают со всеми файлами каталога по маске. Циклы не нужны.     | |||
| 26
    
        mistеr 18.09.13✎ 10:20 | 
        (0) Только удалять не стоит. По крайней мере, не сразу. Чтобы потом локти не кусать.     | |||
| 27
    
        spectre1978 18.09.13✎ 10:29 | 
        (26) это почему? Задачи разные бывают. Например, у меня отсылка файлов - платная, за каждый файл, и мне совершенно не надо чтобы повторно отсылались те же самые файлы что и в прошлый раз. Поэтому удаление исходных после успешной отсылки должно быть обязательно и работать надежно.     | |||
| 28
    
        mistеr 18.09.13✎ 11:43 | 
        (27) Если повторно отсылать не нужно, переложить в другой каталог и удалять по истечении времени     | |||
| 29
    
        spectre1978 18.09.13✎ 15:49 | 
        (28) мне не нужно. Файлы для отправки генерируются, при необходимости их можно просто пересоздать. А ТС виднее, что ему нужно.     | |||
| 30
    
        Coldboy 19.09.13✎ 09:40 | 
        (29) а где инструкция как рулить этой NcFTP?     | |||
| 31
    
        spectre1978 19.09.13✎ 10:36 | 
        (29) С ними ставится документация. Доступна из меню "Пуск". Ну или из командной строки ncftpget /?, ncftpput /?     | |||
| 32
    
        spectre1978 19.09.13✎ 10:40 | 
        (30) Например, примерно вот так я отправляю все файлы XML из папки:
 ncftpput -f "C:\Program Files\ediscript\login.txt" -DD -e "C:\Program Files\ediscript\logs\errors.txt" outbox "C:\Documents and Settings\All Users\Документы\EDI\Out\*.xml" | |||
| 33
    
        Coldboy 19.09.13✎ 10:43 | 
        вов ов мне примерно так и надо. значит логи ты пишешь login.txt ошибки error.txt а из  папки берешь все xml верно? вопрос а параметры авторизации где берешь для ftp? и это ты сделал батник ?     | |||
| 34
    
        spectre1978 19.09.13✎ 10:47 | 
        login.txt содержит имя ftp-сервера, имя пользователя и пароль, т.е. три строчки. errors.txt - правильно, ошибки. Из папки берутся все XML и передаются, те которые успешно переданы - удаляются из папки (ключ DD).     | |||
| 35
    
        spectre1978 19.09.13✎ 10:48 | 
        у меня не батник, а vbs-скрипт, потому что у меня там есть еще и прием, а прием немного посложнее - я в зависимости от времени суток формирую разные маски для файлов. В батнике этого не сделать. Но в общем вы мыслите в правильном направлении.     | |||
| 36
    
        Coldboy 19.09.13✎ 10:51 | 
        (35) спасибо большое буду пробывать.     | |||
| 37
    
        ДенисЧ 19.09.13✎ 10:52 | 
        (36) Ты букву ё забыл в слово вписать...     | |||
| 38
    
        Coldboy 19.09.13✎ 10:58 | 
        (37) в какое слово?     | |||
| 39
    
        Coldboy 25.09.13✎ 09:36 | 
        (35) а имя ftp сервера как должно выглядеть, а то что-то пробую ftp://adress и нифига пишет не
 ncftpput: cannot open ftp://83.167.87.154: unknown host. | |||
| 40
    
        Coldboy 25.09.13✎ 09:47 | 
        а не решил ошибку, но почему то Could not change to directory outbox: server said: The system cannot find the file specified.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |