Bat файл резервное копирование файлов. Как написать свой bat файл для создания резервной копии. Горячие клавиши The Bat

«Мышь» работает с почтовыми данными на компьютере так же, как и большинство других мейлеров. Программа создает папку под профиль пользователя, где хранит конфигурационные файлы, содержимое имейл-аккаунтов и сертификаты.

Еще в процессе установки The Bat! вы могли выбирать, где разместить почтовый каталог. И если соответствующий путь вы тогда не указали, значит программа использует вариант по умолчанию:

C:\Users\Имя_Пользователя\AppData\Roaming\The Bat!

Переходим в почтовый каталог The Bat! и сразу отмечаем одну или несколько папок с названиями наших ящиков. В них и хранятся все данные email-профилей. И письма в том числе.

Но здесь не все так однозначно. Почтовик не хранит каждое письмо в отдельном файле. Для входящей и исходящей почты существуют свои базы данных — что-то вроде архивов. Поэтому восстановить конкретное сообщение у вас не получится — придется «реставрировать» все хранилище.


После этого остается лишь ждать завершения конвертации почтовых баз клиента в их исходное состояние.

Как резервировать и восстанавливать письма в The Bat!

Допустим, вы переустановили мейлер от Ritlabs и определили новую директорию для почтового каталога. Утраченные письма в этом случае можно легко восстановить. Для этого просто переместите папку с данными нужного ящика по новому пути.

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

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


После этого резервную копию писем можно импортировать, к примеру, в The Bat!, установленный на другом ПК.


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

Наиболее доступный инструмент для резервного копирования - командная строка. Найти более-менее приличную реализацию резервного копирования в Windows-системах средствами CMD/BAT-файлов можно, воспользовавшись любым поисковиком. Однако часто нет необходимости накапливать и хранить все созданные архивы, достаточно лишь нескольких самых последних. В этом случае необходима реализация резервного копирования с поддержкой глубины архивации. Найти реализацию поддержки глубины архивации в таких скриптах уже гораздо сложнее.

Вашему вниманию - относительно простой скрипт (CMD-сценарий), реализующий резервное копирование с заданной глубиной архивации.

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

Содержимое скрипта:

SETLOCAL enabledelayedexpansion rem Глубина архивации (количество последних архивов, которые должны быть сохранены) SET ArcDepth=5 rem Путь к каталогу, в который будут складываться резервные копии SET DirName=My Backup"s rem Путь к каталогу с новым бэкапом (%DATE: =0% %TIME: =0% - замена пробелов в %DATE% и %TIME% на нули) FOR /f "tokens=1-7 delims=/-:., " %%a IN ("%DATE: =0% %TIME: =0%") do (SET NewBkDir=%DirName%\%%c.%%b.%%a_%%d.%%e.%%f.%%g) rem Путь к лог-файлу SET LogFile=%DirName%\%DirName%.LOG ECHO ***** НАЧАЛО %DATE% %TIME% ***** >> "%LogFile%" IF NOT EXIST "%DirName%" (MD "%DirName%" ECHO "%DirName%" - создан >> "%LogFile%") ECHO Создание нового каталога для бэкапа: >> "%LogFile%" IF NOT EXIST "%NewBkDir%" (MD "%NewBkDir%" ECHO "%NewBkDir%" - создан >> "%LogFile%") ELSE (ECHO "%NewBkDir%" - существовал ранее >> "%LogFile%") rem Блок создания новой резервной копии SET SrcData=D:\My Src SET ArcName=%NewBkDir%\MySrc.rar ECHO Архивация "%SrcData%" с помощью RAR >> "%LogFile%" rar a -m5 -md4096 -ep1 -ri1 -dh -ilog"%LogFile%" "%ArcName%" "%SrcData%" rem Соблюдение глубины архивации (должны остаться только последние %ARCDEPTH% каталогов) ECHO Удаление старых бэкапов: >> "%LogFile%" SET Index=0 rem DIR /AD /B /O-D "%DirName%" - получение упорядоченного по дате списка каталогов, начиная с самых новых FOR /f "tokens=1" %%i IN ("DIR /AD /B /O-D "%DirName%"") DO (rem Первые %ArcDepth% архивов пропускаем, остальные удаляем SET /a Index+=1 IF !Index! LEQ %ArcDepth% (echo "%DirName%\%%i" - оставлен >> "%LogFile%") else (RMDIR /S/Q "%DirName%\%%i" echo "%DirName%\%%i" - удален >> "%LogFile%")) ECHO ***** КОНЕЦ %DATE% %TIME% ***** >> "%LogFile%" ECHO. >> "%LogFile%" ECHO. >> "%LogFile%"

Поскольку используется консольная версия архиватора RAR, необходимо, чтобы для скрипта был доступен RAR.exe. Для новых локализованных версий архиватора помимо файла RAR.exe также желательно наличие файла RarLng.dll, а для зарегистрированных пользователей - еще и файла rarreg.key. Для обеспечения доступности можно, например, просто положить все нужные файлы в рабочий каталог скрипта.

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

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

В примере содержится только один блок непосредственного создания резервной копии (расположен после соответствующего комментария). Можно добавить несколько таких блоков один за другим, например, скопипастив имеющийся блок и изменив значения переменных SrcData и ArcName.

Резервные копии раскладываются в каталоги, имена которых содержат дату и время выполнения резервирования в следующем порядке: год, месяц, дата, часы, минуты, секунды, сотые доли секунды (справедливо для русских региональных настроек). Это необходимо для того, чтобы алфавитная сортировка списка резервных копий совпадала с сортировкой по дате/времени создания копий (то есть просто для удобства работы с копиями). В случае использования региональных настроек, в которых порядок следования элементов даты другой, для получения аналогичного эффекта необходимо изменить порядок токенов %%a-%%g в команде
SET NewBkDir=%DirName%\%%c.%%b.%%a_%%d.%%e.%%f.%%g

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

«Родная» кодировка для CMD-сценариев - OEM (866), а для Windows-версии архиватора RAR - ANSI (Windows-1251). В связи с этим лог-файл грешит некоторой неудобочитаемостью, если сценарий сохранить в родной для него OEM-кодировке. С одной строны, для себя я счел этот недостаток некритичным (в редакторе/просмотрщике Far Manager не трудно нажать F8 для смены кодировки), а с другой стороны ничто не мешает сохранить сценарий в кодировке ANSI (вывод в консоль командами ECHO в сценарии не используется - только в лог-файл, - поэтому пользователь никаких кракозяблов не увидит, зато лог будет нормально записываться в одной и той же кодировке). Буду благодарен, если предложите более корректный способ «подружить» эти кодировки.

Теги: командная строка Windows, резервное копирование, глубина архивации

Продолжаем изучать почтовую программу The Bat! В этом уроке мы рассмотрим резервное копирование и восстановление почтовых ящиков вместе со всеми настройками, возможности поиска и (hot key).

Резервное копирование

В предыдущих уроках мы изучали Но при переустановке системы или запуске программы на другом компьютере или ноутбуке появляется необходимость заново настраивать отправку и получение почты для каждого почтового ящика, автоматическую сортировку, шаблоны писем и т.п. Задача особенно усложняется, когда ящиков много и они зарегистрированы на разных почтовых сервисах. Решается данная проблема резервным копированием, благодаря которому можно не только восстановить все настройки e-mail ящиков, но и все входящие, и исходящие письма в этих ящиках.

Рассмотрим порядок создания и восстановления резервной копии The Bat! с помощью скриншотов. На картинке ниже показано, где расположены соответствующие пункты меню.

Для создания резервной копии выбираем одноименный пункт меню и в следующем окне задаем путь и имя будущего архива, нажав на «Обзор». При необходимости пишем комментарий к архиву.

ВАЖНО! При указании места для создания архива выбирайте диск, отличный от системного, так как при переустановке системы архив может затереться. Например, если система расположена на диске «С», то место для архива указывайте на «D», «E» или на флеш накопителе.

После нажатия «ОК» появится окно, в котором есть возможность выбрать все или отдельные ящики для архивации. Также при необходимости можно задать пароль к архиву.

После очередного нажатия «ОК» запустится процесс резервного копирования The Bat!

Для восстановления из резервной копии выбираем соответствующий пункт меню (смотрите первый скриншот). Далее нажимаем «Добавить» и находим архив, созданный ранее. После чего жмем «ОК». В следующем окне выбираем почтовые ящики для восстановления и опять жмем «ОК». Ждем какое-то время и наслаждаемся результатом

Кстати, если пользоваться портативной (portable) версией The Bat!, расположенной не на системном диске, то после переустановки системы почтовый клиент вообще не нужно будет восстанавливать — он сразу будет готов к работе. Надо только заново создать ярлык исполняемого файла на рабочем столе.

Поиск в программе The Bat!

Почтовый клиент The Bat! обладает мощным поиском, использующим тонкую настройку параметров искомой информации. Если у вас десяток ящиков и в них сотни или даже тысячи писем, то этот инструмент просто незаменим.

Вот какие критерии поиска можно настроить:

1. Вызов окна поиска
2. Условия поиска. Выбрать можно следующие параметры:

  • текст
  • отправитель (e-mail)
  • получатель (e-mail)
  • заголовок
  • примечание
  • прикрепленные файлы
  • любая часть

3. Удалить условие
4. Добавить новое условие
5. Выбор параметра «И», «ИЛИ»
«И» — все заданные условия должны выполняться
«ИЛИ» — хотя бы одно из заданных условий должно выполняться
6. Выбор ящиков и папок для поиска
7. Начать поиск
8. Расширенный поиск — дает возможность еще более точно задавать параметры поиска. Например: размер письма, атрибут (статус) письма, срок давности, временной интервал и другие критерии. Этот режим я рассматривать не буду. Там все интуитивно понятно, думаю, разберетесь.

Рассмотрим два примера поиска:

Пример 1. Допустим, нам нужно найти все письма с фразой в теме «урок Windows 7» или «урок Виндовс 7» (точно не помним). Искать будем во всех почтовых ящиках. Настройка поиска будет выглядеть следующим образом:

Пример 2. Необходимо найти письмо автора (отправителя) Д. Печёркина, которое содержит фразу в тексте «как заработать в партнерках», но не содержит слово «рассылка». Также известно, что письмо находится в почтовом ящике «Yandex». Настройки будут такими:

Горячие клавиши The Bat!

Почтовая программа The Bat! обладает набором для быстрого вызова той или иной функции. Вот наиболее часто используемые комбинации:

  • создать письмо — Ctrl+N
  • получить новую почту — F2
  • получить почту сразу для всех ящиков — Alt+F2
  • отправить почту — Shift+F2
  • свойства почтового ящика — Alt+Enter
  • быстрый ответ на письмо — Ctrl+Enter
  • вызов шаблона — Ctrl+пробел
  • создание правила сортировки — Shift+Ctrl+F
  • поиск — F7
  • адресная книга — F8

Увидеть все горячие клавиши The Bat! можно в меню программы напротив соответствующих команд.

В программе есть также возможность задать собственные комбинации горячих клавиш через меню «Свойства»/«Настройка»/ раздел «Другие опции»/«Системные клавиши».

Вот и все, что я хотел на данный момент рассказать вам о почтовой программе The Bat! Надеюсь, информация данного урока будет вам полезной и поможет более продуктивно работать с этой замечательной программой!

Программ для создания резервных копий (backup, бэкап) великое множество. Есть и платные, есть и бесплатные. В некоторых используются «мастера», которые позволяют указать массу параметров, не прибегая к сложному процессу настройки.

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

  • выбор исходных данных (каталог, файлы);
  • выбор куда копировать (каталог);
  • непосредственно копирование.
Так вот для того, чтобы выполнить все эти операции совсем не обязательно прибегать к помощи сторонних программ. Всё необходимое уже есть в Windows .

Для того, чтобы скопировать файл/каталог используется команда xcopy . Она имеет много параметров, но в общем случае указывается так:

Xcopy "D:\myfiles\*.*" "j:\backup\myfiles\*.*"

Данная команда скопирует каталог «d:\myfiles » в «j:\backup\myfiles ».

Итак наши действия очень просты. Вначале откроем Notepad2 . В нем нужно указать те каталоги, которые следует резервировать. Лично у меня важные данные хранятся в нескольких каталогах: «txt», «work» и т.д.

Вторым параметром мы указываем куда следует скопировать. Обычно я для резервирования использую внешний жесткий диск (USB).

Для того, чтобы Windows при каждом его подключении присваивала одну и ту же букву диска, нужно войти в Панель управления - Администрирование - Управление Компьютером - Управление дисками . На подключенном диске кликните правой кнопокй мыши и выберите «Изменить букву диска или путь к диску... ». В открывшемся окне выберите «Изменить » и укажите нужную букву. Например, у меня указано «J».

Для удобства лучше сохранять имена каталогов, чтобы потом не запутаться. А сам бэкап я размещаю в отдельном каталоге «backup ».

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

Вот рабочий пример резервирования кошельков WEBMONEY и Яндекс-Деньги :

Xcopy "C:\Program Files\WEBMONEY\*.*" "j:\backup\WEBMONEY*.*" /E /F /H /R /K /Y /D xcopy "C:\Program Files\Wallet\*.*" "j:\backup\Wallet*.*" /E /F /H /R /K /Y /D

Эти строки нужно скопировать в Notepad2 и сохранить в файле с расширением «.bat», например «backup.bat ». Теперь нам достаточно только запустить его и все будет сделано автоматически.

Теперь обратите внимание, что пути мы указываем в кавычках «"» - это требование Windows для длинных имен. Каталоги разделяются обратным слэшем «». В конце указываются параметры для xcopy .

То есть вам нужно только указать ваши каталоги для резервирования и сохранить как «backup.bat ». Вы можете сделать несколько таких файлов: процесс копирования может иногда занимать много времени, поэтому какие-то совсем критичные данные я копирую чаще - для них существует другой файл «QiuсkBACKUP.BAT ».

Естественно вам нужно следить за тем, чтобы на приёмном диске было достаточно места.

Теперь следующий момент, с которым вы можете столкнуться - неверная кодировка текста. Дело в том, что русские буквы для DOS (где и происходит копирование) отличаются от Windows (где вы создали bat-файл). Например у меня есть каталог «c:\Избранное ». Если я запущу bat-файл, то ничего не произойдет, поскольку xcopy его просто не найдет. Поэтому наш bat-файл нужно преобразовать в DOS-кодировку (её часто называют «OEM »).

Для этого мы выделяем такие строчки в Notepad2 и жмем Ctrl+Shift+O (или Edit - Convert - To OEM Text ). Вы увидите «белиберду», но не пугайтесь, так и должно быть. В моем примере это выглядит так: «c:?§Ўа ­­®Ґ »

Если у вас есть Total Commander , то вы можете просмотреть этот файл по F3 и в просмотрщике переключить кодировку - клавиша «S ».

Следующая задача, которой я не пользуюсь, но возможно вам пригодится - это копирование актуальной версии каталога, а старый бэкап переименовывается в «old ».

Здесь задача совсем несложная: вначале нужно удалить старый «old », после этого переименовать текущий бэкап в «old » и скопировать как обычно xcopy . Вот пример резервирования каталога «c:\work »:

Del "j:\backup\work_old" /s /q rmdir "j:\backup\work_old" /s /q rename "j:\backup\work" "work_old" xcopy "c:\work\*.*" "j:\backup\work*.*" /E /F /H /R /K /Y /D

Команда «del » удаляет все файлы из каталога. Команда «rmdir » удаляет пустой каталог. Команда «rename » переименовывает файлы. А командой «xcopy » мы, как обычно, копируем файлы.

  • Опишу и приведу примеры создания бэкапов используя командную строку.
  • “Подробно” распишу команду xCOPY и как применить WinRar в создании бэкапа.
  • Создание папкиархива с именем: текущая дата.

Процитирую баш.орг.ру:

Год за годом все новые админы бэкапят серверные винты на логических разделах тех же самых винтов.

Резервное копирование с использованием xCOPY

Пример скрипта, копирующего файлы в каталог f:backupnew , при втором запуске переименовывает каталог new в old , создает заново каталог new и копирует файлы. Т.е. батника дает возможность хранить “двухдневные” бэкапы:

del “f:backupold” /s /q

Rmdir “f:backupold” /s /q

Rename “f:backupnew” “old”

Mkdir “f:backupnew”

Xcopy “D:123*.*” “f:backupnew*.*” /E /F /H /R /K /Y /D

Можно поступить иначе, например команда md %date:~0,2%.%date:~3,2%.%date:~6,4% создает папку, имя которой – текущая дата:

mkdir “f:backup%date:~0,2%.%date:~3,2%.%date:~6,4%”

xcopy “e:superBD*.*” “f:backup%date:~0,2%.%date:~3,2%.%date:~6,4%*.*” /E /F /H /R /K /Y /D

rem Должно работать и без mkdir, т.к. xcopy сам бы создал папку. Подстраховка =)

Поясню по используемым ключам XCOPY:

/E Копирует все подкаталоги, включая пустые.

/F Выводит имена исходных файлов и файлов-результатов в процессе копирования.

/H Включает в операцию копирования скрытые и системные файлы. По умолчанию системные файлы игнорируются.

/R Копирует файлы с атрибутом «только для чтения».

/K Копирует файлы с атрибутом «только для чтения» с сохранением этого атрибута для скопированных файлов, оригиналы которых имеют этот атрибут.

/Y Устраняет выдачу запроса на подтверждение перезаписи существующего конечного файла.

/D[:мм-дд-гггг] Копирует только файлы, измененные не ранее заданной даты. Если не включить значение мм-дд-гггг, команда xcopy копирует все файлы-источники, которые новее существующих файлов-результатов. Эта возможность позволяет обновлять только измененные файлы.

О дополнительных ключах xcopy можно почитать на

Резервное копирование с использованием WinRAR

del “f:backupold” /s /q

Rmdir “f:backupold” /s /q

Rename “f:backupnew” “old”

Mkdir “f:backupnew”

“C:Program FilesWinRARRar.exe” a -m5 -r -t -dh -idp f:backupnewbackup.rar “D:superBD*.*” >> f:backupnewbackup.log

Если прикрутить сюда вышеописанную %date:~0,2%.%date:~3,2%.%date:~6,4% , то

“C:Program FilesWinRARRar.exe” a -m5 -r -t -dh -idp f:backup.rar “E:superBD*.*” >> f:%date:~0,2%.%date:~3,2%.%date:~6,4%.log

Ren “f:backup.rar” “%date:~0,2%.%date:~3,2%.%date:~6,4%.rar”

log-файлы я стер

Подробнее о ключах запуска Rar.exe можно почитать в файле C:Program FilesWinRARRar.txt

После того как батник создан и проверен – можно создать задание на автоматический запуск, например ночью, когда юзвер спит . Жми пуск выполнить – вводи control schedtasks – жми ентер . Откроется планировщик заданий, там проще некуда.

Удачи!

З.Ы. Не бэкапьте на логических разделах тех же самых винтов.

 
Статьи по теме:
Высокочастотные колонки-твитеры: под силу даже самые высокие ноты Звучание в театре
Производитель: Англия Технические характеристики: 2-х полосная АС с фазоинвертором Диапазон воспроизводимых частот: 50 – 20000 Гц Граничная НЧ частота с уровнем -10 дБ: 31 Гц Чувствительность: 91 дБ/2,83 В/1 м Номинальная мощность: 110 Вт Динами
Операционная система
Под гордым названием «Эльбрус» вышла серия суперкомпьютеров, которая была разработана советским ученым Всеволодом Сергеевичем Бурцевым (70-80-е ). Эти компьютеры внесли ряд новшеств в теорию вычислительных машин, такие как суперскалярность (обработку боле
Обзор Meizu MX6: эксперименты продолжаются Коммуникация между устройствами в мобильных сетях осуществляется посредством технологий, предоставляющих разные скорости передачи данных
Обновлено 03.01.2018Китайский производитель смартфонов Мейзу известен не только на азиатском рынке, но и на европейском. Он делает достаточно хорошие гаджеты с достойной производительностью, причем, по низкой цене. В этом сравнении мы определим, какой тел
Гайд по Android Pay: оплачиваем покупки смартфоном
Краткая инструкция для платёжной системы от Google. В закладки 23 мая 2017 года с 9:00 по московскому времени в России платёжная система Android Pay. Она существует с сентября 2015 года, Россия стала 11 по счёту регионом, в котором заработала система. З