Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Помогите создать папку с помощью батника (http://forum.oszone.net/showthread.php?t=277604)

OverSense 12-02-2014 17:15 2307931

Помогите создать папку с помощью батника
 
Есть некий scheduler, который запускает один раз в месяц батник. Назовем его "Отчет". Этот батник создает в папке из которой он был запущен 2 файла с расширением *.csv Проблема в том, что эти файлы имеют точно заданное название и нельзя его изменить. Через месяц запустится снова scheduler и перезапишет эти файлы. Стоит задача такова, чтобы некий scheduler запускал батник, который делает следующее:
1.Создавал папку с именем текущей даты
2.Копировал мой батник "Отчет" из конкретной папки в созданную папку
3.Запускал мой батник.
4.После создания удалял мой скопированный батник

Вообще не представляю как это сделать...
MD D:\\%date:~-10%
copy D:\\Отчет\Ежемесячный отчет.bat D:\\%date:~-10%
call D:\\%date:~-10%\Ежемесячный отчет.bat
DEl D:\\%date:~-10%\Ежемесячный отчет.bat

Почему то не работает... папка создается и все...

icq99999999 12-02-2014 17:57 2307955

Цитата:

Цитата OverSense
copy D:\\Отчет\Ежемесячный отчет.bat D:\\%date:~-10% »

нужно брать в " все что содержит пробелы
например->
copy "D:\\Отчет\Ежемесячный отчет.bat" "D:\\%date:~-10%"
или
chcp 1251>nul
xcopy "D:\Отчет\Ежемесячный отчет.bat" "D:\%date:~-10%" /d /s /e /i
кодировка oem

Georgio 12-02-2014 17:57 2307956

Код:

@echo off
chcp 1251>nul
set "BAT_File=Ежемесячный отчет.bat"
set "Folder_Name=%DATE:~-4%-%DATE:~0,-8%-%DATE:~-7,2%"
md "%Folder_Name%"
copy "%BAT_File%" "%Folder_Name%">nul
call "%Folder_Name%\%BAT_File%"
del "%Folder_Name%\%BAT_File%"


OverSense 12-02-2014 18:24 2307978

Georgio, я сделал вот так и все работает... за исключением того, что файлы создаются все равно на рабочий стол ))

MD D:\%date:~-10%
copy D:\Report\111.bat D:\\%date:~-10%
call D:\%date:~-10%\111.bat

второй батник у меня создает файлы... но почему то на том месте откуда я запускаю первый...

icq99999999 12-02-2014 18:29 2307979

Цитата:

Цитата OverSense
но почему то »

нужно сменить директорию
cd "D:\%date:~-10%"

OverSense 12-02-2014 19:02 2307993

Блин... не догоняю )) Вот так сделал все равно не работает...

MD "D:\%date:~-10%"
copy D:\Report\111.bat D:\\%date:~-10%
CD D:\%date:~-10%\
call D:\%date:~-10%\111.bat

Georgio 12-02-2014 19:02 2307994

Код:

@echo off
chcp 1251>nul
set "BAT_File=Ежемесячный отчет.bat"
set "Folder_Name=%DATE:~-4%-%DATE:~0,-8%-%DATE:~-7,2%"
md "%Folder_Name%"
copy "%BAT_File%" "%Folder_Name%">nul
cd %Folder_Name%
call "%BAT_File%"
del "%BAT_File%"


OverSense 12-02-2014 19:46 2308015

Всем спасибо! Разобрался ))
во втором файле добавил самым первым d:


Время: 20:32.

Время: 20:32.
© OSzone.net 2001-