CMD/BAT: Копирование только новых файлов
Здравствуйте. Задача состоит в следующем:
На диске X:\ формируются файлы с расширением bak. Нужно в папку Y каждый день копировать только новые файлы (к примеру bat-файл запустится в 8 утра и должен скопировать файлы за сегодняшнее число).
Спасибо.
2 Ответ от smaharbA 2012-09-10 14:09:03 (изменено: smaharbA, 2012-09-10 14:13:57)
- smaharbA
- Разработчик
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
если без подпапок и дата создания совпадает с датой модификации
echo off
set s=y:\*.bak
set d=%homedrive%\моя папка\куда копирую\
mkdir "%y%" > nul 2>&1
xcopy /d:%date:
а так есть для этих целей forfiles
3 Ответ от angelraven 2012-09-10 14:31:30
- angelraven
- Участник
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
если без подпапок и дата создания совпадает с датой модификации
Дата создания и модификации не совпадают. Файлы перезаписываются, поэтому дата создания не меняется.
4 Ответ от smaharbA 2012-09-10 14:49:54
- smaharbA
- Разработчик
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
пример копирует все с датой модификации равной или позднее текущей
5 Ответ от smaharbA 2012-09-10 15:27:04
- smaharbA
- Разработчик
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
если интересует именно дата создания, то либо forfiles либо примерно так
6 Ответ от angelraven 2012-09-10 16:04:05
- angelraven
- Участник
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
7 Ответ от yuriy2000 2012-09-11 21:03:55
- yuriy2000
- Участник
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
если файлы копируются/создаются на диске X:, то можно использовать атрибут "Архивный"
скопировать все файлы с расширением .BAK и с атрибутом "Архивный" с диска X: на диск Y:
можно запускать сколько угодно раз в день — будут копироваться только "новые" файлы.
из Справки XCOPY
/M Копирует файлы только с атрибутом "Архивный",
при этом атрибут "Архивный" отключается.
8 Ответ от angelraven 2012-09-12 08:25:05 (изменено: angelraven, 2012-09-12 08:34:26)
- angelraven
- Участник
- Неактивен
- Рейтинг : [ 0 | 0 ]
Re: CMD/BAT: Копирование только новых файлов
если файлы копируются/создаются на диске X:, то можно использовать атрибут "Архивный"
скопировать все файлы с расширением .BAK и с атрибутом "Архивный" с диска X: на диск Y:
можно запускать сколько угодно раз в день — будут копироваться только "новые" файлы.
из Справки XCOPY
/M Копирует файлы только с атрибутом "Архивный",
при этом атрибут "Архивный" отключается.
Интересная мысль! Попробуем. Спасибо большое. Я еще попробовал вариант с использованием robocopy, это конечно не совсем cmd но раз уж она присутствует в системах начиная с Vista, почему бы и нет. В robocopy реализованы простые команды и параметры именно для копирования.
В моем случае код выглядит так:
Подключаем сетевой диск O:, копируем туда файлы не старее одного дня (/MAXAGE:1). Затем отключаем сетевой диск. Можно не использовать сетевой диск а указывать сразу путь для копирования \\имя компьютера\расшаренная папка
Как скопировать только новые или измененные файлы/папки за последний час в Powershell?
Добрый день, подскажите пожалуйста, хочу раз сутки копировать папки и файлы из одной директории в другую, но только те, которые были созданы/изменены за последний час. Т.е. сделать что то вроде дельта синхронизации
Имеется следующая иерарихия
Folder_1
-File_1_1
-File_1_2
Folder_2
-File_2_1
-Folder_2_1
—File_2_1_1
Folder_3
Теперь если вдруг появится новый файл в папке Folder_2_1 или изменится любой другой то они должен будут скопироваться
Делаю таким образом
И вроде способ рабочий, копирует файлы, повторяет иерархию, НО при создании или изменении файлов, меняются также атрибуты папки в которой он находится, и таким образом папка также попадает под эту выборку, и в результате в новое место копируется не только изменившийся файл, но и все файлы в изменившейся папке
А нужно копировать только файлы изменившиеся, и если этот файл находится в определенной папке, то только копировать необходимую иерархию папок, без левых неизменившихся файлов
Копирование только новых файлов
У меня есть каталог 1\ в котором есть файлы (совершенно от любой даты)
могу ли я с помощью xcopy или robocopy скопировать файлы только новые, не ориентируясь на дату, только на момент запуска cmd файла?
Целевой каталог 2\ (изначально всегда пустой)
Например, файлы, которые находятся в каталоге 1 от 20.06.2023
Вечером того же дня один из файлов изменился, файл: 1.txt
Как мне написать в cmd, чтобы он смог скопировать файлы *.txt только изменившиеся позже, т.е. в данном примере 1.txt измененный вечером. из каталога 1\ в каталог 2\
Может как-то ориентируясь на время запуска cmd
p.s. пожалуйста с конкретным примером
Robocopy GUI: копирование только новых файлов
Помогите разобраться с Robocopy GUI.Какие команды лучше прописать. Нужно сделать копию папки с.
Копирование только новых и модифицированных файлов с сохранением структуры каталогов
драссти бьюсь об .BAT второй день цель — собрать батник с целью копирования большого количества.
Копирование новых файлов
Товарищи, добрый день! Есть код: for /r %Path1% %%F in (TEST*.TEST*) do ( findstr /i /x.
Копирование только новых каталогов
Добрый день. Помогите пожалуйста написать cmd. Копирование папок, подкаталогов, файлов из одной.
Копирование новых файлов каждые 30 минут
Знатоки, приветствую. Помогите пожалуйста реализовать задачу. Есть два каталога: "Cat-1".
как в windows 10 скопировать только новые файлы
Как копировать или перемещать файлы и папки в Windows 10

Windows предлагает множество способов копирования и перемещения файлов. Мы покажем вам все хитрости для проводника и их использование в командной строке и PowerShell. Вы даже можете добавить «Копировать в» и «Переместить в» в контекстные меню Проводника.
При копировании файла или папки в Windows 10 дубликат создается из выбранного элемента и сохраняется в выбранной папке назначения. Однако при перемещении файла или папки исходный элемент перемещается в целевую папку вместо отправки идентичной копии.
Как копировать или перемещать файлы с помощью перетаскивания
Одним из наиболее распространенных способов копирования или перемещения файла или папки является перетаскивание их в папку назначения. По умолчанию, в зависимости от расположения папки назначения, File Explorer может перемещать ее вместо ее копирования или наоборот. Однако есть скрытый метод, который переопределяет поведение Windows по умолчанию.
Откройте проводник, нажав Windows + E, и перейдите к файлу, который вы хотите скопировать.

При перетаскивании файлов из одной папки в другую вы можете использовать панель слева или открыть другой экземпляр Проводника, чтобы перейти к папке назначения. В этом примере мы будем использовать второе окно проводника для копирования файлов.
Откройте второе окно проводника, нажав Windows + E, и перейдите к папке назначения.

Windows выполняет два действия по умолчанию при перетаскивании файла или папки в новое место назначения: копирование или перемещение. Копирование происходит, когда вы помещаете файл или папку в каталог на другой привод. Перемещение происходит, когда вы бросаете его на одни и те же диск, как мы сделаем ниже. Однако есть скрытый прием, который заставляет Windows выполнять определенное действие.
Чтобы скопировать файлы на другой диск, выделите файлы, которые вы хотите скопировать, щелкните и перетащите их во второе окно, а затем отбросьте их.

Если вы пытаетесь скопировать файлы в папку на том же диске, щелкните и перетащите их во второе окно. Прежде чем вы их уроните, нажмите Ctrl, чтобы активировать режим копирования.

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

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

Как копировать или перемещать файлы, используя вырезать, копировать и вставить
Вы также можете копировать и перемещать файлы с помощью буфера обмена, так же, как вы вырезать, копировать и вставлять текст.
Откройте проводник, нажав Windows + E, и перейдите к файлу, который вы хотите скопировать.

Выделите файлы, которые вы хотите скопировать, а затем нажмите «Копировать» в меню «Файл» или нажмите Ctrl + C на клавиатуре, чтобы добавить их в буфер обмена.

Если вы предпочитаете перемещать элементы, выделите файлы, которые вы хотите переместить. Затем нажмите «Вырезать» в меню «Файл» или нажмите Ctrl + X, чтобы добавить файлы в буфер обмена.

Перейдите в каталог, в который вы хотите переместить файлы, а затем нажмите «Вставить» на вкладке «Главная» или нажмите Ctrl + V. В зависимости от того, нажмете ли вы «Копировать» или «Вырезать», ваши файлы будут скопированы или перемещены соответственно.

Копирование или перемещение файлов и папок с помощью контекстного меню

Когда вы щелкаете правой кнопкой мыши по файлу или папке, в Windows есть несколько скрытых функций контекстного меню, которые позволяют вам добавить две опции: Копировать в или Переместить в. Добавление этих двух функций в контекстное меню дает вам возможность скопировать или переместить элементы всего за несколько кликов.
СВЯЗАННЫЕ С: Как добавить «Переместить в» или «Скопировать в» в контекстное меню Windows 10
Как копировать или перемещать файлы с помощью командной строки
Один из самых быстрых способов открыть командную строку в нужном каталоге — из проводника. Сначала откройте проводник и перейдите к месту назначения. Нажмите на адресную строку, введите « cmd ”И нажмите Enter.
СВЯЗАННЫЕ С: 10 способов открыть командную строку в Windows 10

Чтобы скопировать файл, вы можете использовать следующий синтаксис команды (если вы копируете папку, просто опустите расширение файла):
Кавычки в команде важны только тогда, когда имя файла или папки содержит пробелы. Если у них нет пробелов, вам не нужно включать кавычки. В приведенном ниже примере ни имя файла, ни папка не содержат пробелов, поэтому нам не нужно их использовать.

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

Чтобы переместить файл, вы можете использовать следующий синтаксис команды (если вы перемещаете папку, просто опустите расширение файла):
Как и при копировании, кавычки в команде важны только тогда, когда имя файла или папки содержит пробелы. Если они этого не делают, вам не нужно включать кавычки. В приведенном ниже примере ни имя файла, ни папка не содержат пробелов, поэтому нам не нужно их использовать.

Однако, если вы попытаетесь переместить несколько файлов, как мы это сделали с copy Командная строка выдаст синтаксическую ошибку.

Есть несколько других способов перемещать более одного элемента одновременно, используя командную строку, не выдавая ошибку. Каждый метод использует подстановочный знак для перемещения нескольких файлов в одной инструкции.
Во-первых, если вы хотите переместить все файлы определенного типа, вы можете использовать следующий синтаксис для перемещения файлов:

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

Как копировать или перемещать файлы с помощью PowerShell
Windows PowerShell даже более мощная и гибкая, чем командная строка, когда дело доходит до копирования или перемещения файлов и папок в среде командной строки. Хотя мы будем только царапать поверхность, с помощью командлетов вы можете делать действительно мощные вещи.
Самый быстрый способ открыть окно PowerShell в нужном месте — сначала открыть папку в проводнике. В меню «Файл» нажмите «Открыть Windows PowerShell», а затем выберите «Открыть Windows PowerShell».
СВЯЗАННЫЕ С: 9 способов открыть PowerShell в Windows 10
«Открыть Windows PowerShell»> «Открыть Windows PowerShell». «Width =» 541 «height =» 318 «onload =» pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon (this); «onerror =» this.onerror = null; pagespeed.lazyLoadImages.loadIfayeA это); «/>
Чтобы скопировать файл или папку в PowerShell, используйте следующий синтаксис:
Хотя они не являются обязательными, Copy-Item Командлет требует только кавычки вокруг имени файла и каталога, если они содержат пробелы.
Например, чтобы скопировать файл из текущего каталога в другой, вы должны использовать следующую команду:

Настоящая мощь PowerShell заключается в возможности передавать командлеты вместе. Например, у нас есть папка с кучей подпапок с электронными книгами, которые мы хотим скопировать.
Вместо изменения каталога и повторного запуска команды мы можем заставить PowerShell сканировать каждую папку и подпапку, а затем копировать все файлы определенного типа в место назначения.
Мы могли бы использовать следующий командлет:

Для перемещения файлов вместо этого вы можете использовать следующий синтаксис для перемещения чего угодно:

Move-Item следует тому же синтаксису, что и Copy-Item Командлет. Итак, если вы хотите переместить все определенные типы файлов из папки и всех ее подпапок — как мы это делали с командлетом Copy-Item — он практически идентичен.
Введите следующий командлет, чтобы переместить все файлы определенного типа из каталога и его подпапок:
Как в windows 10 скопировать только новые файлы
Сообщения: 2378
Благодарности: 1485
——-
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.
Сообщения: 114
Благодарности: 0
Спасибо
Сделал так, Все верно или лучше, что то добавить?
robocopy «\\dc\1c_update\1cv8» «C:\Program Files (x86)\1cv8» /MIR /Z
| Читаем xcopy /? /D:m-d-y Копирует файлы, измененные либо в указанный день, либо после. » |
Этот вариант не интересен тем, что править скрипт пришлось бы
Сообщения: 27467
Благодарности: 8024
Если же Ваша цель именно простая репликация, а не резервирование — то в общем случае этого достаточно, разве что с параметрами логирования поиграться: Robocopy и убедиться, что файловая система в источнике и приёмнике — NTFS.
Сообщения: 2378
Благодарности: 1485
| написал строчку копирующую все файлы папками в другую папку. Вот команда xcopy «\\dc\1c_update\1cv8» «C:\Program Files (x86)\1cv8» /y /S /E |
——-
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.
Копирование файлов с заменой на более новые
Всем доброго времени суток.
Недавно перешел на Вин 10 и возник немного глупый вопрос: мне надо скопировать папку с файлами с флешки на компьютер. Папки на компе и флешке одинаковые, но на флешке некоторые файлы более новые или папка содержит новые файлы. На семерке можно было задать копирование с заменой на более новые файлы. При этом одинаковые файлы не копировались, а заменялись только обновленные. На десятке же у меня копируются все файлы по новой. И когда я хочу обновить данные с рабочей флешки на домашнем компе, копирование занимает кучу времени. А раньше за несколько секунд копировались только новые файлы.
Это такая особенность десятки или у меня что-то не так работает? Можно ли как-нибудь сделать, чтобы копировались только новые файлы, а не папка целиком?
Пробовал копировать как в проводнике, так и в Total commander.
Копирование всех файлов с заменой на более свежие по дате создания
Ну весь вопрос в теме, как скопировать все файлы знаю, а как поработать при замене с датой создания.
Копирование файлов с заменой более старых
Доброго времени суток уважаемые форумчане. Столкнулся с такой проблемой: Есть функция копирования.
Копирование файлов с заменой
Требуется скопировать файлы из одной директории в другую. Если имена файлов совпадают, то оставить.
Копирование системы с заменой файлов
Вчера после установки обнов лягла винда, а образ сделанный недавно не работает. На ноуте можно.
Чот я не припомню, чтобы в проводнике когда-то была такая возможность. Но я прекрасно знаю, что в Total Commnder такая возможность была ВСЕГДА.
Robocopy для копирования только новых папок и файлов
Чтобы найти все новые файлы и подпапки в некоторой корневой папке (скажем, «Документы») и скопировать их на другой диск (в данном случае J:
Используемая командная строка:
robocopy c:\users\valery\ Documents j:\ robocopy /XO /E /MAXAGE:20131030 /XD
Результат: создано полное дерево папок. Только новые файлы скопированы, как предполагается. Хорошо
Дело в том, что я не хочу создавать все подпапки на целевом диске, если в них нет новых файлов.
Результаты приемлемы, но есть много работы, чтобы просмотреть все папки и найти новые файлы, а также понять, какие подпапки являются новыми
4 ответа 4
/S :: copy Подкаталоги, но не пустые.
Если в каталоге не скопированы файлы, каталог не создается в месте назначения.
Если у вас нет каталогов для исключения, вы можете просто использовать:
Вы можете сделать robocopy /? за всю помощь.
Мои простые команды, которые прекрасно работают:
Не этот конкретный случай, но я надеюсь, что это поможет кому-то, когда они будут выполнять миграцию файловых серверов.
Установить источник и пункты назначения:
«Q:\TEST» = Устанавливает исходный каталог в подключенный диск «Q»
«T:\TEST» = Устанавливает каталог назначения на подключенный диск «T»
Используемые опции:
ПРИМЕЧАНИЕ:
Параметр LOG+ можно переключить на параметр LOG, если вы хотите сохранить только самую свежую информацию о сеансе.
Как в Windows скопировать файлы и папки на другой диск или раздел, сохранив временные метки
Если вы переместите файлы с одного жесткого диска или логического раздела на другой, их временные метки будут автоматически перезаписаны. Это не всегда бывает нужно, у вас может быть множество причин сохранить исходные временные метаданные. Существуют программы для синхронизации данных, которые позволяют сохранять временные метки, по крайней мере, так утверждают разработчики этих программ, но зачем засорять диск сторонним ПО, если то же самое можно сделать средствами Windows?
Во всех популярных версиях Windows имеется штатная утилита robocopy.exe, которая как раз умеет сохранять метаданные файлов и каталогов при их копировании на другой раздел или физический диск.
Чтобы скопировать файлы с одного диска на другой, откройте от имени администратора командную строку и выполните команду следующего вида:
robocopy «путь к исходным данным» «путь к целевой папке» /E /MIR /COPYALL /DCOPY:T

Редактирование временных меток в Change Timestamp
Если речь идет об одном или нескольких файлах, для «восстановления» исходной временной метки можно воспользоваться бесплатной утилитой Change Timestamp.
Скачайте ее с сайта разработчика dns-plus.net/ctime.html и запустите.
Установите нужные вам дату и время, отметьте флажками нужные метки и перетащите файл либо группу файлов на окошко Change Timestamp.

Временные метки тут же будут изменены, в чём вы сами сможете убедиться, открыв свойства обработанного файла.
Поддерживает утилита и обработку каталогов.
Если спустя некоторое время вы заметите, что временные метки обработанных файлов изменились, отключите в оснастке управления службами службу индексирования Windows Search.

Или предварительно перед обработкой переместите файлы в каталог, который не индексируется этой службой.