CMD/BAT - [решено] Копирование файлов за текущую дату!

Аватара пользователя
erorr

CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение erorr »

Всем доброго времени суток!

Помогите! Нужен скрипт который будет отбирать файлы из папки и подпапок за текущую дату(создание и изменение). и копировать в другую папку.

Спасибо!
Вложения

[Расширение jpg было запрещено, вложение больше недоступно.]

Аватара пользователя
erorr

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение erorr »

Если через forfiles (возможно, отсутствует в системе), то можно так:





Код:

Код: Выделить всё

forfiles /d 0 /p "Папка" /m * /s /c "cmd /c copy /y "@path\@file" "Другая папка""
Аватара пользователя
erorr

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение erorr »

Измените какой-нибудь файл, или создайте какой-нибудь файл хоть в текстовом редакторе, чтобы была гарантия наличия сегодняшнего файла. На Вашей распечатке видны только сегодняшние даты папок, а не файлов.
Аватара пользователя
amel27

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение amel27 »

для типовой локали DD.MM.YYYY

Код:

Код: Выделить всё

xcopy /s /y /d:%DATE:~3,2%-%DATE:~,2%-%DATE:~6,4% "Исходный путь\*" "Целевой путь\"
Аватара пользователя
erorr

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение erorr »

Цитата erorr:



amel27 Спасибо!

Надо, чтобы и измененные и созданные перекидывал, и желательно все в одну кучу, без сохранения пути в новой папки.

amel27 спасибо.

Надо чтобы измененные и созданные перекидывал, и желательно все в одну кучу, без сохранения
CMD/BAT - [решено] Копирование файлов за текущую дату!




Тогда так



Код:

Код: Выделить всё

#Powershell script.
#Don't forget unlock script executing by 
#using command "Set-ExecutionPolicy RemoteSigned" or "Set-ExecutionPolicy Unrestricted"
#Save this file with ".ps1" extension
#перемеменная OlderThan отвечает за разницу дней от текущей даты
$OlderThan=New-TimeSpan -Days 1
$CurDay=Get-Date -Date ((Get-Date)-$OlderThan) -Hour 00 -Minute 00 -Second 00 -Millisecond 00
Get-ChildItem D:\Downloads\* -Recurse -Force | `
    ? {(($_.CreationTime -gt $CurDay) -or ($_.LastWriteTime -gt $CurDay))} | `
    Copy-Item -Destination "c:\папка назначения" -Force
Аватара пользователя
erorr

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение erorr »

Цитата amel27:



для типовой локали DD.MM.YYYY

Код:

xcopy /s /y /d:%DATE:~3,2%-%DATE:~,2%-%DATE:~6,4% "Исходный путь\*" "Целевой путь\"
CMD/BAT - [решено] Копирование файлов за текущую дату!




мне нужен как раз такой батник что бы

как в шапке

Нужен скрипт который будет отбирать файлы из папки и подпапок за текущую дату(создание и изменение). и копировать в другую папку.

Спасибо!

создал батник

xcopy /s /y /d:%DATE:~3,2%-%DATE:~,2%-%DATE:~6,4% "E:\test\*" "E:\test2\"

при запуске сразу закрывается,а если с командной строки то пишет скопировано 0 файлов
Аватара пользователя
vsokol

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение vsokol »

vsokol, для отладки сделайте



Код:

Код: Выделить всё

echo xcopy /s /y /d:%DATE:~3,2%-%DATE:~,2%-%DATE:~6,4% "E:\test\*" "E:\test2\"
pause

Посмотрите, как отобразилась дата Должно быть

xcopy /s /y /d:10-27-2016 "E:\test\*" "E:\test2\"



Сделайте Dir "E:\test\*" - там есть файлы? И есть ли там файлы с датой за сегодняшний день?
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Копирование файлов за текущую дату!

Сообщение megaloman »

Цитата megaloman:



Посмотрите, как отобразилась дата

Сделайте Dir "E:\test\*" - там есть файлы?
CMD/BAT - [решено] Копирование файлов за текущую дату!




вот что вышло



C:\Users\sysadmin\Desktop>echo xcopy /s /y /d:10-27-2016 "E:\test\*" "E:\test2\"

xcopy /s /y /d:10-27-2016 "E:\test\*" "E:\test2\"



C:\Users\sysadmin\Desktop>pause

Для продолжения нажмите любую клавишу . . .

если ввести

Dir "E:\test\*"

то выходит

Microsoft Windows [Version 10.0.14393]

(c) Корпорация Майкрософт (Microsoft Corporation), 2016. Все права защищены.



C:\Users\sysadmin>Dir "E:\test\*"

Том в устройстве E не имеет метки.

Серийный номер тома: C64A-6ED9



Содержимое папки E:\test



27.10.2016 11:15 .

27.10.2016 11:15 ..

27.10.2016 11:15 Runnerv3

0 файлов 0 байт

3 папок 96*145*170*432 байт свободно



C:\Users\sysadmin>



непонятно почему не работает
Ответить

Вернуться в «Скриптовые языки администрирования Windows»