Войти

Показать полную графическую версию : [решено] Периеминование файла doc.csv в Документ_дата_время.csv


kagorec
29-03-2014, 06:00
Доброе утро!

Подскажите пожалуйста готовое решение для следующей просто задачи. (в пару-часовом поиске google.com оказался безуспешным)

Задача:

В папке (d:\all\doc.csv) периодически создается сторонней программой документ с именем doc.csv ,
этот документ надо переименовать, в имени добавить дату и время, формат по сегодняшней дате например пример_29032014_035235.csv (пояснение: пример_день месяц год_часы минуты секунды)
Нашел такой вариант и сохранил как d:\all\rename.bat
@echo off
setlocal enableextensions enabledelayedexpansion
set CurDate=%date:~6,4%%date:~3,2%%date:~0,2%
set CurTime=%time:~0,2%%time:~3,2%%time:~6,2%
copy d:\all\doc.csv d:\all\пример_%CurDate%_%CurTime%.csv
echo Done!

После запуска рядом лежащий файл не переименовывает...

Georgio
29-03-2014, 09:39
@echo off
chcp 1251>nul
set CurDate=%date:~6,4%%date:~3,2%%date:~0,2%
set CurTime_1=%time:~0,2%%time:~3,2%%time:~6,2%
set /a CurTime_2=%CurTime_1%
if not "%CurTime_2%"=="%CurTime_1%" (
set CurTime=0%CurTime_2%
) else (
set CurTime=%CurTime_1%
)
>nul copy "d:\all\doc.csv" "d:\all\пример_%CurDate%_%CurTime%.csv"
echo Done!
pause>nul
exit /b

kagorec
29-03-2014, 18:40
Благодарю, работает как надо!

http://i.imgur.com/g9nAi99.png




© OSzone.net 2001-2012