powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Windows [игнор отключен] [закрыт для гостей] / Батник копирует файлы за указанный интервал вемени
6 сообщений из 6, страница 1 из 1
Батник копирует файлы за указанный интервал вемени
    #39641411
strQwerty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток!
Друзья, подскажите пожалуйста пример скрипта для батника,
который копирует файлы из директории А в директорию Б за указанный интервал по времени создания файлов.
В папке более миллиона файлов и их количество растет во времени, все виснит при ручной сортировки.
Спасибо!
...
Рейтинг: 0 / 0
Батник копирует файлы за указанный интервал вемени
    #39641416
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
robocopy /?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robust File Copy for Windows
-------------------------------------------------------------------------------

  Начало: Mon May 07 19:18:22 2018

              Применение:: ROBOCOPY источник назначение [файл [файл]...] [Параметры]

             Источник:: Исходная папка (диск:\путь или \\сервер\общий ресурс\путь).
        Назначение :: Конечная папка (диск:\путь или \\сервер\общий ресурс\путь).
               Файл :: Копировать файлы   (имена и подстановочные знаки: по умолчанию "*.*").

::
:: Параметры копирования:
::
                 /S :: Копировать вложенные папки, кроме пустых.
                 /E :: Копировать вложенные папки, включая пустые.
             /LEV:n :: Копировать только верхние n уровней исходного дерева папок.

                 /Z :: Копирование файлов с возобновлением.
                 /B :: Копирование файлов в режиме архивирования.
                /ZB :: используется режим с возобновлением; если доступ запрещен, используется режим архивации.
            /EFSRAW :: Копирование всех зашифрованных файлов в режиме EFS RAW.

  /COPY:флаги копирования :: что копируется для файлов (по умолчанию /COPY:DAT).
                       (флаги копирования: D=Данные, A=Атрибуты, T=Метки времени).
                       (S=Безопасность=NTFS ACLs, O=Сведения о владельце, U=Сведения аудита).

 
               /SEC :: Копировать файлы с параметрами безопасности (эквивалентно /COPY:DATS).
           /COPYALL :: Копировать все сведения о файле (эквивалентно /COPY:DATSOU).
            /NOCOPY :: Не копировать никаких сведений о файле (удобно использовать с параметром /PURGE).
            /SECFIX :: Исправлять параметры безопасности для всех файлов, даже пропущенных.
            /TIMFIX :: Исправлять атрибуты времени для всех файлов, даже пропущенных.

             /PURGE :: Удалять файлы и папки назначения, которых больше не существует в источнике.
               /MIR :: Создать зеркало дерева папок (эквивалентно /E  с /PURGE).

               /MOV :: Перемещать файлы (удаление из источника после копирования).
              /MOVE :: Перемещать файлы и папки (удаление из источника после копирования).

     /A+:[RASHCNET] :: Добавлять заданные атрибуты скопированным файлам.
     /A+:[RASHCNET] :: Удалять заданные атрибуты из скопированных файлов.

            /CREATE :: Создать только дерево папок и файлы нулевой длины.
               /FAT :: Создать файлы назначения только в формате 8.3 FAT.
               /256 :: Отключить поддержку длинных путей ( > 256 знаков).

             /MON:n :: Наблюдать за источником; перезапустить после n изменений.
             /MOT:m :: Наблюдать за источником; перезапустить через m минут, если произошли изменения.

      /RH:hhmm-hhmm :: Часы запуска - время, когда можно запускать новое копирование.
                /PF :: Проверять часы запуска по файлам (не по проходам).

             /IPG:n :: Интервал между пакетами (мс) для снижения нагрузки на сеть при низкоскоростных подключениях.

                /SL :: копирование самих символических ссылок вместо копирования целевого объекта этих ссылок.

            /MT[:n] :: Выполнить многопотоковое копирование с помощью n потоков (по умолчанию 8).
                       n должно быть не меньше 1 и не больше 128.
                       Этот параметр несовместим с параметрами /IPG и /EFSRAW.
                       Для повышения производительности перенаправьте вывод с помощью параметра /LOG.

 /DCOPY:флаг[и] копирования :: сведения, КОПИРУЕМЫЕ для каталогов (значение по умолчанию: /DCOPY:DA).
                       (флаги копирования: D=Данные, A=Атрибуты, T=Метки времени).

           /NODCOPY :: ЗАПРЕТ КОПИРОВАНИЯ сведений о каталогах (по умолчанию выполняется команда /DCOPY:DA).

::
:: Параметры выбора файлов:
::
                 /A :: Копировать только файлы с установленным атрибутом "Архивный".
                 /M :: Копировать только файлы с атрибутом "Архивный" и сбросить его.
    /IA:[RASHCNETO] :: Включить файлы, у которых установлен какой-либо из заданных атрибутов.
    /XA:[RASHCNETO] :: Исключить файлы, у которых установлен какой-либо из заданных атрибутов.

 /XF file [файл]... :: Исключить файлы, соответствующие заданным именам, путям и подстановочным знакам.
 /XD dirs [папки]... :: Исключить папки, соответствующие заданным именам и путям.

                /XC :: Исключить измененные файлы.
                /XN :: Исключить более поздние файлы.
                /XO :: Исключить более ранние файлы.
                /XX :: Исключить дополнительные файлы и папки.
                /XL :: исключить отдельно расположенные файлы и папки.
                /IS :: Включить те же файлы.
                /IT :: Включить оптимизированные файлы.

             /MAX:n :: Максимальный размер файла - исключить файлы, размер которых более n байт.
             /MIN:n :: Минимальный размер файла - исключить файлы, размер которых менее n байт.

          /MAXAGE:n :: Максимальный возраст файла - исключить файлы, возраст которых превышает n дней.
          /MINAGE:n :: Минимальный возраст файла - исключить файлы, возраст которых менее n дней.
          /MAXLAD:n :: Наиболее поздняя дата последнего обращения - исключить файлы, которые не использовались с даты n.
          /MINLAD:n :: Наиболее ранняя дата последнего обращения - исключить файлы, которые использовались после даты n.
                       (Если n < 1900, то n = n дней, в противном случае n - дата в формате ДДММГГГГ).

                /XJ :: исключить точки соединения. (по умолчанию обычно включаются).

               /FFT :: Использовать время файлов FAT (двухсекундная точность).
               /DST :: Учитывать одночасовую разницу при переходе на летнее время.

               /XJD :: Исключить точки соединения для папок.
               /XJF :: Исключить точки соединения для файлов.

::
:: Параметры повторных попыток:
::
               /R:n :: число повторных попыток для неудавшихся копий: по умолчанию - 1 миллион.
               /W:n :: Время ожидания между повторными попытками: по умолчанию - 30 секунд.

               /REG :: Сохранить /R:n и /W:n в реестре как параметры по умолчанию.

               /TBD :: Ждать, пока будут определены имена общих ресурсов (ошибка повторной попытки 67).

::
:: Параметры ведения журнала:
::
                 /L :: Только список - файлы не копируются, не удаляются, не помечаются отметками времени.
                 /X :: Сообщать обо всех дополнительных файлах, а не только о выбраных.
                 /V :: Подробный вывод с указанием пропущенных файлов.
                /TS :: Включать в вывод метки времени исходных файлов.
                /FP :: Включать в вывод полные пути файлов.
             /BYTES :: Печатать размеры в байтах.

                /NS :: Без размера - не заносить в журнал размер файлов.
                /NC :: Без класса - не заносить в журнал классы файлов.
               /NFL :: Без списка файлов - не заносить в журнал имена файлов.
               /NDL :: Без списка папок - не заносить в журнал имена папок.

                /NP :: Без хода процесса - не отображать число скопированных процентов.
               /ETA :: Показывать оценку времени окончания копирования файлов.

          /LOG:файл :: Записывать состояние в файл журнала (перезаписывать существующий журнал).
         /LOG+:файл :: Записывать состояние в файл журнала (добавлять к существующему журналу).

       /UNILOG:файл :: Записывать состояние в файл журнала в формате Юникод (перезаписывать существующий журнал).
      /UNILOG+:файл :: Записывать состояние в файл журнала в формате Юникод (добавлять к существующему журналу).

               /TEE :: Направлять выходные данные в окно консоли и в файл журнала.

               /NJH :: Без заголовка задания.
               /NJS :: Без сведений о задании.

           /UNICODE :: Cостояние вывода в формате Юникод.

::
:: Параметры задания:
::
       /JOB:имя_задания :: Взять параметры из указанного файла задания.
      /SAVE:имя_задания :: Сохранить параметры в указанный файл задания
              /QUIT :: Выйти после обработки командной строки (для просмотра параметров). 
              /NOSD :: Не указывается исходная папка.
              /NODD :: Не указывается папка назначения.
                /IF :: Включить следующие файлы.
?
...
Рейтинг: 0 / 0
Батник копирует файлы за указанный интервал вемени
    #39641424
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
for %F in (*.*) - переберёт все файлы.
%~tF - вернёт дату и время создания файла.
IF /I - позволит сравнить эту дату с заданной (для интервала потребуется 2 IF).
Файлы, прошедшие обе проверки - копировать.

Можно использовать и forfiles /d - тогда первую проверку выполнит она, а вторую организовать с помощью IF /I.

Но лучше реализовать эту операцию более вменяемыми средствами - хотя бы на VBS.
...
Рейтинг: 0 / 0
Батник копирует файлы за указанный интервал вемени
    #39641428
strQwerty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, к сожалению там XP ( robocopy отсутствует, доставить нет возможности) по RDP с очень слабым каналом, нужен BAT
...
Рейтинг: 0 / 0
Батник копирует файлы за указанный интервал вемени
    #39641432
strQwerty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, на VBA проблем нет такое запилить))) но нет такой возможности, а вот синтаксис батников совсем незнаком и как то пугает на первый взгляд, время нет совсем на чтиво, возможно есть похожий скрипт который можно интуитивно перепилить ?
...
Рейтинг: 0 / 0
Батник копирует файлы за указанный интервал вемени
    #39641470
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
strQwertyна VBA проблем нет такое запилитьЗапилите на VBS. Используйте FileSystemObject. 6 строк кода, включая дефиниции... или 8, если запрашивать даты интерактивно... или 10, если ещё и проверять ввод.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Windows [игнор отключен] [закрыт для гостей] / Батник копирует файлы за указанный интервал вемени
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]