Войти

Показать полную графическую версию : [решено] Копирование папки по дате


Daemonstar
23-09-2010, 19:31
Доброго времени! Подскажите как скопировать папку используя bath только по сегодняшней дате, либо содержащую в конце имени P , пример названия папки
"12324 345234 P".

Daemonstar
24-09-2010, 15:01
Вобщем вышло что то вроде:

set yyyy=%date:~6,4%
set mm=%date:~3,2%
set dd=%date:~0,2%

set SDIRV=d:\2
set DDIRV=d:\1


xcopy %SDIRV%\*.* %DDIRV% /S /D:%mm%-%dd%-%yyyy%


Не совсем то что я хотел бы, ведь могут попадаться лишние папки, но как указать маску я не докурил.
Вывод: буду ставить PowerShell :)

amel27
25-09-2010, 09:36
содержащую в конце имени P »
set SDIRV=d:\2
set DDIRV=d:\1

for /d %%i in ("%SDIRV%\*P") do xcopy /s "%%i" "%DDIRV%\"

Daemonstar
25-09-2010, 15:55
Cпаибо amel27!
P.S. Плохому одмину мышка мешает ;) (это про меня)

amel27
25-09-2010, 16:18
Плохому одмину мышка мешает »
э-э... да ты крутой админ, если без мышки обходишься... ; )

VitGT
27-09-2010, 17:57
А как удалить папку содержащую в конце имени P ?

amel27
28-09-2010, 01:17
как удалить папку содержащую в конце имени P »
set SDIRV=d:\2

for /d %%i in ("%SDIRV%\*P") do RD /S /Q "%%i"

VitGT
01-12-2010, 03:22
содержащую в конце имени P
set SDIRV=d:\2
set DDIRV=d:\1
for /d %%i in ("%SDIRV%\*P") do xcopy /s "%%i" "%DDIRV%\" »

Еще вопрос, а как скопировать не всё что находится в той папке, а только один файлик, например 123.txt ?

-----------------------------------------------------------------------------------------------------------
Добавленно 2.11.2010
Разобрался, вернее помогли на ру-борде, надо было дописать "%%~i\123.txt"
Получилось так
set SDIRV=d:\2
set DDIRV=d:\1

for /d %%i in ("%SDIRV%\*P") do xcopy /s "%%~i\123.txt" "%DDIRV%\"

DaniilTimonov
26-04-2024, 16:44
Добрый день,
Daemonstar,
Помог Ваш код в решение задачи ,
Коллеги - возможно ли к этому коду добавить параметр по последнему времени в часах ?
То бишь Дата + Время, (дата в коде есть)


set yyyy=%date:~6,4%
set mm=%date:~3,2%
set dd=%date:~0,2%

set SDIRV=d:\2
set DDIRV=d:\1


xcopy %SDIRV%\*.* %DDIRV% /S /D:%mm%-%dd%-%yyyy%

DJ Mogarych
26-04-2024, 23:01
Добавить-то можно, другое дело, что xcopy воспринимает только формат /d [:MM-DD-ГГГГ].

См. справку по xcopy (https://learn.microsoft.com/ru-ru/windows-server/administration/windows-commands/xcopy).




© OSzone.net 2001-2012