Alex2 101 Ответов: 1

Как переместить файлы из папки в другую на основе даты в виде пакетного файла на основе диапазона дат с помощью команды dos?


Я хочу переместить файлы из папки в другую папку в виде пакетного файла на основе диапазона дат с помощью команды Dos.Там будет указана дата от даты и до даты, и на ее основе файлы должны двигаться соответственно. Вложенные папки должны создаваться динамически, а файлы в соответствии с условием даты должны перемещаться вместе с ними в целевую папку .

Что я уже пробовал:

Я могу переместить всю папку как таковую в другую указанную на основе измененной даты с помощью приведенной ниже команды.
forfiles /P "E:\Alex\FTS_DOS\FileStore\REP" /M *.DMP /D +0 /C "cmd /c copy @path E:\Alex\FTS_DOS\Dest_FileStore\REP"


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

OriginalGriff

И что же?
Что вы пробовали?
Где ты застрял?
Какая помощь вам нужна?

Используйте виджет" улучшить вопрос", чтобы отредактировать свой вопрос и предоставить более подробную информацию.

1 Ответов

Рейтинг:
2

Graeme_Grant

Во-первых, нужно посмотреть, как работать с файлами и датами-время исследования... Этот пакетный файл получить дату файла - поиск Google[^] имеет ряд решений.

Это один торчит: windows-Как получить дату из файла в bat-файле? - переполнение стека[^] и внизу этой страницы находится вот это: Удаление файлов старше - Windows CMD - SS64.com[^]

Теперь у вас есть способ выполнить тест даты для завершения пакетного файла.


[no name]

Я хочу установить проверку для архивирования файлов продолжительностью более 60 дней в команде bat file.
Я хочу показать проверочное сообщение, если некоторые или целые файлы архивируются не менее 60 дней
Ниже сценарий не работает на основе проверки
Скрыть Код Скопировать
@ECHO OFF
setlocal enabledelayedexpansion
установить источник="E:\FTS_NBF\FILESTORE\CAD"
SET DEST="E:\FTS_NBF\Dest_FILESTORE\CAD"
set /a days=60

Эхо %сообщ% %ДЕСТ%


Если не существует %DEST% mkdir %DEST%

Если существует (дата файла > 60)

forfiles /П %источник%\ /м *.* /Д -%дни% /ц "команду cmd /c перемещение аннотации @Path %ДЕСТ%\"

ЕЩЕ

echo не рекомендуется архивировать файлы старше 60 дней........................

ПАУЗА

Graeme_Grant

Пожалуйста, не размещайте код в ответах - вы разместили более 40 вопросов, так что вы уже должны это знать. Как уже упоминалось в репосте, который вы удалили:

Пожалуйста, обновите вопрос с четкими и краткими деталями, образцом кода, любыми сообщениями об ошибках (включая внутренние детали исключения) и т. д., нажав на кнопку Улучшить вопрос виджет.

[no name]

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