Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 16.08.2015
Сообщений: 5

Архивация измененных/добавленных файлов

02.01.2016, 22:45. Показов 2482. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Помогите пожалуйста написать батник, который будет архивировать только измененные и новые добавленные файлы.
- Полный путь к папке для архивирования задается вручную (copy/past) пользователем через интерфейс CMD
- Используется консольный архиватор 7-zip Игоря Павлова
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@echo off
:start
cls
set load=
set 7zip=
echo.
set /p load=Specify path backup
if "%load%"=="" goto start
cls 
:copy
set 7zip=backup.7z
if exist .\APP\%7zip% goto end 
7z.exe a -t7z -bd -v1024mb -m0=bcj2 -m2=delta -m3=lzma2:15 -si "%load%\*"
:end 
pause
:EOF
Алгоритм следующий:
В папку "C:\APP\*" копируются данные. После операции копирования данных, необходимо вручную запустить батник, который сделает "снимок" полной иерархии структуры папок и посчитает хеш-сумму для всех файлов в директории APP с выводом лога в файл snapshot.log Далее папка APP очищается и в неё копируется новая порция данных. Вновь запускаем тот же батник, который по предыдущему "снимку" сопоставит, проанализирует и создаст архив с сохранением полной иерархии всех папок включающий в себя только отличающиеся файлы.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.01.2016, 22:45
Ответы с готовыми решениями:

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

Копирование отсутствующих и изменённых файлов по результатам сверки файлов одного каталога с файлами другого
Всем привет. такая вот задача у меня. я не селен в этом. но стараюсь. есть 2 каталога (1. NEW, 2. CLONE)с файлами в один из них время от...

Копирование только изменённых файлов
Есть два древа папок. В одном обновленная версия игры (древо1), в другом старая (древо2). Причем не известно какие файлы были изменены, и...

2
 Аватар для ComSpec
3463 / 2001 / 635
Регистрация: 26.02.2014
Сообщений: 1,457
04.01.2016, 06:02
Лучший ответ Сообщение было отмечено DianaKonovalova как решение

Решение

Цитата Сообщение от DianaKonovalova Посмотреть сообщение
Алгоритм следующий:
В папку "C:\APP\*" копируются данные. После операции копирования данных, необходимо вручную запустить батник, который сделает "снимок" полной иерархии структуры папок и посчитает хеш-сумму для всех файлов в директории APP с выводом лога в файл snapshot.log Далее папка APP очищается и в неё копируется новая порция данных. Вновь запускаем тот же батник, который по предыдущему "снимку" сопоставит, проанализирует и создаст архив с сохранением полной иерархии всех папок включающий в себя только отличающиеся файлы.


Windows Batch file
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
@echo off
 
set "arch=%ProgramFiles%\7-Zip\7z.exe"
 
set "source=C:\APP"
set "destination=C:\Test\changes.7z"
 
set "log=snapshot.log"
 
for /f "tokens=1,2*" %%i in ('
 ""%arch%" h "%source%"| findstr/rc:"^^.[^^-acioRv][^^ ]* ^ *[^^ ][^^ ]* ^ .""
') do (
 >>.tmp echo %%k^|%%i& if exist "%log%" (
  for /f "tokens=2 delims=|" %%l in ('findstr/bilc:"%%k|" "%log%"') do (
   if %%l equ %%i >>exclude.txt echo %%k
  )
 )
)
if exist "%log%" (
 "%arch%" a -x@exclude.txt "%destination%" "%source%"
 del exclude.txt
)
>nul move .tmp "%log%"
 
exit/b
2
0 / 0 / 0
Регистрация: 16.08.2015
Сообщений: 5
05.01.2016, 22:41  [ТС]
ComSpec, великолепно, всё работает как надо. Благодарю за помощь!
Подсчёт хеша всех файлов и сам backup для выборки можно организовать из-под консольного архиватора Arc.exe?
В доке нашла необходимую опцию --crconly, но не пойму, какой должен быть синтаксис командной строки в батнике.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.01.2016, 22:41
Помогаю со студенческими работами здесь

Поиск и копирование только измененных файлов
Вот есть такой код: SET f=%~dp0 ::Сканирование ветки реестра КонсультантПлюс. В ней указывается рабочая директория, в которой...

Сравнение двух папок с копированием измененных файлов
Всем привет! Дано 2 папки с файлами и подпапками. F:\Folder1 - рабочая папка F:\Folder2 - папка в которую делается копия Необходимо...

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

Архивация по 50 файлов
Есть одна папка в которой n картинок. Я вбрасываю в нее и жму name.bat Скрипт создает внутри name1 name2 .. name5 и в каждой по 50...

Архивация файлов
Здравствуйте, как отредактировать данную строку так, чтоб в архиве были только файлы и подпапки? Т.е. при открытии архива сразу доступны...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru