Имя: Пароль:
IT
Админ
bat для копирования на ftp
,
0 lamme
 
20.06.16
16:16
есть батник -который копирует фотки из указанной папки на ftp в папку.
Надо усложнить задачу.
взять дату создания фото. например, 2016.05.20
и копировать фото в папку на сервере : \foto\2016\05\20\имя файла.jpg

Как можно ?
1 mehfk
 
20.06.16
16:17
2 lamme
 
20.06.16
16:20
ой е ...
FOR /f "usebackq tokens=1,2,3,* delims= " %%a IN (`dir /-c /tc "%%f"`) DO IF "%%d" == "%%~nf%%~xf" ECHO %%a >> "%~2"

и что тут где?
3 polosov
 
20.06.16
16:26
4 lamme
 
20.06.16
16:34
все .. сдаюсь ... буду из 1С это делать ...
думал - что батником и ftp.exe все будет шустрее делаться ...
5 Карупян
 
20.06.16
16:38
может js проще написать?
6 Карупян
 
20.06.16
16:38
ну или OneScript
7 sonne666
 
20.06.16
16:38
(0) Куски моих батников, написанных методом тыка. Вдруг поможет :)
Перебирает все файлы из каталога _Dir и в переменную _DateMode записывает дату:
for /f %%i in ('dir %_Dir% /tw) do Set _DateMode=%%i

Из даты в переменной now получает год(%%c), месяц(%%b) и день(%%a)? т.е. формирует строку даты в нужном мне формате:
for /f "tokens=1-7 delims=/-:., " %%a in ( "%now% ) do set now=%%c-%%b-%%a
8 lamme
 
20.06.16
16:40
(5) может...
9 lamme
 
20.06.16
16:40
(7)
а это в пределах одного файла все получается ?
10 sonne666
 
20.06.16
16:43
(9) у меня это в двух разных, для разных задач. Первый кусок просто получает дату файла, а второй может разбирать дату на составляющие. Соединить не должно быть проблемой.
11 sonne666
 
20.06.16
16:45
Как-то так, наверно:
for /f %%i in ('dir %_Dir% /tw) do (
Set _DateMode=%%i
for /f "tokens=1-7 delims=/-:., " %%a in ( "%_DateMode% ) do set _NewFolder=\foto\%%c\%%b\%%a
)
12 lamme
 
20.06.16
16:57
11
спасибо
попробую
13 GANR
 
20.06.16
16:58
14 repin_mike
 
20.06.16
17:23
Делал недавно резервное копирование на bat.
Проклял всё на свете (хотя в конечном итоге - сделал).
Правильно тебе посоветовали - смотри js. С батом не связывайся