Добрый день!
Как при помощи bat файла сделать такое:
В текущей директории добавить текущую дату (вида YYYYMMDD) к началу имени файла, с отбивкой пробелом?
Например: oszone.txt -> 20130227 oszone.txt
CMD/BAT - [решено] Добавление текущей даты в начало имени файла
-
megaloman
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Если в системе дата отображается как дд.мм.гггг то
ren oszone.txt "%Date:~6,4%%Date:~3,2%%Date:~0,2% oszone.txt"
ren oszone.txt "%Date:~6,4%%Date:~3,2%%Date:~0,2% oszone.txt"
-
megaloman
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Спасибо за ответ!
С датой понял, а вот с именем файла как? Я имя для примера написал, они во всех файлах разные (сотни файлов) и их надо сохранить. Дата в начало просто добавляется.
Если я в тупую меняю на вот такой вид: ren *.* "%Date:~6,4%%Date:~3,2%%Date:~0,2% *.*", то он отъедает первые 7 символов в начале имени файла.
С датой понял, а вот с именем файла как? Я имя для примера написал, они во всех файлах разные (сотни файлов) и их надо сохранить. Дата в начало просто добавляется.
Если я в тупую меняю на вот такой вид: ren *.* "%Date:~6,4%%Date:~3,2%%Date:~0,2% *.*", то он отъедает первые 7 символов в начале имени файла.
-
megaloman
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Orlov_Pyotr, Как задан вопрос, так написан ответ
Код:
Или если батник в той же папке и она текущая
Код:
Код:
Код: Выделить всё
@Echo Off
Set Where=D:\У попа была собака\Поп ее любил
FOR %%f IN ("%Where%\*.*") DO ren "%%f" "%Date:~6,4%%Date:~3,2%%Date:~0,2% %%~nxf"Или если батник в той же папке и она текущая
Код:
Код: Выделить всё
@Echo Off
FOR %%f IN (*.*) DO (
If Not "%0"=="%%f" ren "%%f" "%Date:~6,4%%Date:~3,2%%Date:~0,2% %%~nxf"
)-
Orlov_Pyotr
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Извиняюсь, если недостаточно чётко обрисовал вводные.
Странно, но этот скрипт вообще не работает... Пишет:
folder\0000.bat""=="%f" was unexpected at this time
Странно, но этот скрипт вообще не работает... Пишет:
folder\0000.bat""=="%f" was unexpected at this time
-
Orlov_Pyotr
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Приведите точный текст вашего батника, который Вы запускаете. Мне непонятно откуда взялось folder\0000.bat Насколько я понял, вы используете 2 вариант скрипта. Он работает, если батник в той же папке где файлы и она текущая. Я проверил еще раз. Попробуйте вариант
Код:
Условие работы - папка с файлами должна быть текущей, батник может быть в любом месте.
Код:
Код: Выделить всё
@Echo Off
FOR %%f IN (*.*) DO (
If Not "%~nx0"=="%%~nxf" ren "%%f" "%Date:~6,4%%Date:~3,2%%Date:~0,2% %%~nxf"
)Условие работы - папка с файлами должна быть текущей, батник может быть в любом месте.
-
Orlov_Pyotr
Re: CMD/BAT - [решено] Добавление текущей даты в начало имени файла
Сейчас супер! Скорость - огонь! Всё работает!
Мегаспасибо!!!
А до этого - не знаю, файл лежал в той же папке, название 0000.bat, но не работал. Сейчас поменял текст отсюда - огонь!!
Мегаспасибо!!!
А до этого - не знаю, файл лежал в той же папке, название 0000.bat, но не работал. Сейчас поменял текст отсюда - огонь!!
