Страница 1 из 1

Автоматизация заливки на ftp по списку (wput) -?

Добавлено: Вт сен 22, 2009 00:08
kadvlad
Друзья, кто знаком с ftp-утилитой wput —
помогите решить задачу автоматизации заливки на ftp. Хочу делать это одной командой, а сейчас пока — в 2 этапа:

1) создание списка исходных директорий/файлов (с дозаписью списка):

Код: Выделить всё

TOTALCMD#BAR#DATA
%comspec%
/c type %L>>"D:\ftp.lst"
shell32.dll,134
Список файлов

1
-1

2) заливка папок/файлов по этому списку (с последующим удалением списка) через кнопку-батник:

Код: Выделить всё

d:\Install\FTP\wput\wput.exe -i D:\ftp.lst ftp://login:pass@host/dir/ 
wait
del D:\ftp.lst
Можно ли эти две операции объединить в одну?

Тоталом не заливаю, т.к. при этом появляются страшные тормоза в системе, локализовать их с помощью логов не удаётся. Настройки стандартные.
А с помощью виндузной утилиты "FTP", насколько я понял, можно заливать только файлы, но не директории (?)
К тому же, нет возможности указать динамические пути (?)

Добавлено: Вт сен 22, 2009 09:16
Batya
Ничего не знаю про указанную утилиту.
:?: Только разве нельзя сразу сделать так:

Код: Выделить всё

TOTALCMD#BAR#DATA
d:\Install\FTP\wput\wput.exe
-i %L ftp://login:pass@host/dir/
shell32.dll,135
Заливка на FTP

1
-1

Добавлено: Вт сен 22, 2009 10:32
kadvlad
Спасибо, но так нельзя, увы.

Код: Выделить всё

-i,  --input-file=FILE       read the URLs from FILE
(URLs, в данном случае, это файл (или список файлов, предназначенных к заливке).

Поэтому его нужно сначала сформировать.
Передавать программе список через %P и %S тоже не работает, т.к. она не понимает перечисления файлов/каталогов.

Добавлено: Вт сен 22, 2009 10:58
Batya
kadvlad писал(а):Спасибо, но так нельзя, увы.

Код:
-i, --input-file=FILE read the URLs from FILE

(URLs, в данном случае, это файл (или список файлов, предназначенных к заливке).

Поэтому его нужно сначала сформировать.
Не понял, почему нельзя? %L и есть список "the URLs from FILE", которой сначала формирует TC.

Добавлено: Вт сен 22, 2009 13:52
kadvlad
Batya
Действительно, таки можно.

Видимо, у меня был какой-то глюк, т.к. вчера перебрал все возможные варианты, но при %L у меня выдавало "file not found", либо на ftp заливался файлик "CMD143A.tmp".
Сейчас всё работает.

Попробовав оба варианта (этот и свой изначальный), решил оставить в пользовании оба.
В моём варианте удобно дополнять список загрузки, не дожидаясь окончания начатого процесса.

Спасибо.

Добавлено: Вт сен 22, 2009 14:30
Batya
kadvlad писал(а):В моём варианте удобно дополнять список загрузки, не дожидаясь окончания начатого процесса.
Это можно также сделать для приведённого мной варианта.
Нужно в свойствах кнопки\команды в начале поля "Параметры" указать впросительный знак "?". Тогда при нажатии кнопки будет появлятся диалог "Параметры командной строки". Отсюда надо скопировать путь к файлу (после "-i"). После запуска закачки можно открыть этот файл (путь в буфере) и отредактировать.

Кстати, а в команде для wput можно поменять местами "-i %L" и "ftp://login:pass@host/dir/"?
Если можно, то будет удобно кнопку привести вот к такому виду:

Код: Выделить всё

TOTALCMD#BAR#DATA
d:\Install\FTP\wput\wput.exe ftp://login:pass@host/dir/ -i
?%L
shell32.dll,135
Заливка на FTP

1
-1

Добавлено: Вт сен 22, 2009 14:39
kadvlad
Согласен, можно и так.
Однако телодвижений намного больше: копировать, редактировать, вставлять..
Автоматизация пропадает ;)