Назад | Перейти на главную страницу

Указание даты в папке назначения robocopy

Я хотел бы указать дату через CLI при запуске robocopy, чтобы папка назначения включала дату.

robocopy C:\folder\ Z:\folder_DATE /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt

Где ДАТА - текущая дата. Возможно ли это, или мне придется прибегнуть к Power Shell?

я нашел это Статья о переполнении стека но я хочу, чтобы это было проще.

Вы действительно не сказали, какой формат даты хотите, поэтому я использую ггггммдд. Это, вероятно, лучше подойдет для сортировки по прошествии дней, месяцев и лет.

FOR /F "tokens=2-4 delims=/ " %%a in ('echo %date%') DO SET datevar=%%c%%b%%a
robocopy C:\folder\ Z:\folder_%datevar% /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt

Вы можете изменить дату, как хотите, где %% c - это год, %% b - месяц, а %% a - день. Просто измените их порядок по своему усмотрению.

Вот мое предложение:

FOR /F "tokens=1,2,3 delims=/ " %%A in ('date /T') DO (
robocopy C:\folder\ Z:\folder_%%A-%%B-%%C /E /ZB /COPYALL /NP /V /LOG:F:\backup_log.txt
)