THE BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму

Сьогодні ми дізнаємося про те, що таке bat файл і заодно створимо один з них.

Думаю, що багато хто, так або інакше, періодично створюють (так звані backup -и) тих чи інших файлів і папок.

Начебто все звично і робити нічого особливо складного не треба: вставити флешку, відкрити "Мій комп'ютер", знайти що треба скопіювати, виділити, тицьнути мишкою, вибрати "скопіювати", перебратися в потрібний каталог, Тицьнути "вставити" і тд.

Але найчастіше всі ці кліки і зайві рухи тіла трохи стомлюють і віднімають дорогоцінний час, особливо при частих копіювання одних і тих же даних. У цій статті я розповім як, а точніше написання такої штуки як bat файл.

Поїхали.

Bat файл - що до чого, вступна

Для початку трохи про те, що таке bat файл, навіщо він потрібен і з чим його (або їх) їдять. Щоб не винаходити велосипед скористаюся витримкою з Вікіпедії:

Пакетний файл (тобто bat файл, від англ. Batch file) - текстовий файл в MS-DOS, OS / 2 або Windows, що містить послідовність команд, призначених для виконання командним інтерпретатором.

після запуску пакетного файлу, Програма - інтерпретатор (як правило COMMAND.COM або CMD.EXE) читає його рядок за рядком і послідовно виконує команди.

Пакетний файл - аналог shell script в Unix-подібних операційних системах.

Пакетні файли корисні для автоматичного запуску додатків. Основна область застосування - автоматизація найбільш рутинних операцій, що регулярно доводиться здійснювати користувачеві комп'ютера.

Прикладами таких операцій можуть служити - обробка текстових файлів; копіювання, переміщення, перейменування, видалення файлів; робота з папками; архівація; створення резервних копій баз даних і т. п.

Пакетні файли підтримують оператори if і goto (а в системах сімейства Windows NT і розширений оператор for ), Що дозволяє обробляти результати виконання попередніх команд або додатків і в залежності від цього виконувати далі той чи інший блок команд (як правило, в разі вдалого завершення додаток повертає 0 у змінній errorlevel; в разі невдалого - 1 або більше значення).

Пакетні файли в DOS мають расшіреніе.bat; для інших операційних систем вони можуть мати інші розширення - наприклад, .CMD в Windows NT і OS / 2, або .BTM в 4DOS або подібних оболонках.

З теорією розібралися, приступимо до, власне, практиці, а саме створення bat-ника.

Як створити bat файл і використовувати його

Давайте підготуємо невелике тестове поле, щоб було на базі чого експериментувати. Відкрийте мій комп'ютер і створіть на диску C: \\ папочку test. Зайдіть в неї і створіть в ній папку.

Накидали туди файлів (штук 5-10) - фотки, документи і тд і тп (будь-яких коротше). Поле для експериментів готове. Далі нам треба створити, власне, сам bat файл після натискання на який у нас буде відбуватися копіювання папки C: \\ test \\ testcopy в, скажімо, папку C: \\ test \\ backup. Створювати другу папку (яка backup) не треба - вона буде з'являтися автоматично.

Створити bat дуже просто. тиснемо правою кнопкою мишки там де хочемо його створити (розташування не важливо - можна прямо на робочому столі) і вибираємо "Створити" - " текстовий документ".

Задаємо створеному файлу назву і відкриваємо його блокнотом або будь-яким іншим текстовим редактором. Тобто на наразі ми маємо відкритий текстовий файлик, який називається, припустимо, копірованіе.txt.

Додаємо в файл команду, наприклад, для копіювання

Далі, власне, нам в цей файлик потрібно ввести команду, яка буде відтворюватися по засобом консолі (cmd) при запуску цього файлу. В даному випадку ми скористаємося командою xcopy бо саме вона дозволяє копіювати файли, каталоги і підкаталоги. З огляду на все шляху у нас вийде наступна команда:

xcopy C: \\ test \\ testcopy C: \\ test \\ backup / f / i / y / s

Роз'яснюю що тут до чого:

  • xcopy - це сама команда;
  • C: \\ test \\ testcopy - це джерело, тобто папка звідки копіюються файли і каталоги;
  • C: \\ test \\ backup - це результат, тобто місце, куди будуть скопійовані файли і каталоги;
  • / F / i / y / s - додаткові параметри синтаксису для команди xcopy (см.сінтаксіс нижче по тексту).

Кількість рядків може бути будь-яким, тобто якщо Вам треба скопіювати 100 папок, Ви пишете 100 рядків в одному файлі і міняєте в них тільки шляху.

Які є (тобто ті, що я вказав в даному прикладі):

  • / F - виводить імена вихідних файлів і файлів-результатів в процесі копіювання
  • / I - створює новий каталог в разі, якщо той відсутній у кінцевому шляху
  • / Y - перезаписує файл в разі, якщо він вже є
  • / S - копіює каталоги і підкаталоги, якщо вони не порожні. Якщо параметр / s не заданий, команда xcopy буде працювати тільки з одним каталогом.

Як на мене - це основний список параметрів необхідних для "тихого" копіювання, тобто без зайвих питань про перезапис, створення каталогів і іншої шушваль. Відносно решти синтаксису можна почитати, наприклад,.

Міняємо формат файлу і пробуємо його запустити

Спочатку відкриваємо "Мій комп'ютер", там переходимо "Сервіс" - "Властивості папки" - "Вид" і знімаємо галочку " Приховувати розширення для зареєстрованих типів файлів".

Тиснемо "Застосувати" і "Ок". Тепер ми можемо змінювати розширення відомих системі файлів, а тому прямуємо до нашого файлик, тиснемо правою кнопкою мишки, вибираємо "Перейменувати" і методом друкування на клавіатурі міняємо розширення з txt на bat (на питання системи чи варто це робити відповідаємо ствердно).

В результаті ми маємо наступну картину (в вашому випадку файлик називається інакше, але має той же формат):

Власне, все, що нам залишається - це запустити цей файл простим кліком по ньому мишки.

Якщо Ви все зробили правильно, то перед Вами промайне консоль і за відомим шляху з'явиться нова татко з заданим заздалегідь назвою і файлами всередині скопійованими з відомої Вам папки, тобто картина вийде приблизно наступна:

Ну або трохи інакша, в залежності від того які шляхи і назви папок Ви прописували в команді.
Відредагувати файлик можна змінивши йому розширення назад на.txt і відкривши будь-яким текстовим редактором.

Післямова

Як я вже сказав і Ви самі напевно усвідомили - використання подібного bat файл "а часто економить купу часу, тобто один раз написав і періодично запускаєш одним кліком і замість багатохвилинної стусанів мишкою і повзання по всіх папок отримуєш автоматизований процес копіювання.

При бажанні можна поставити запуск цього bat-ник в певні дні через планувальник Windows (або інші програми дозволяють це робити) і взагалі забути про проблему довгих ручних backup "ов.

Якщо є якісь питання або проблеми - питайте. Як завжди допоможу чим зможу;)

PS: Якщо мені не зраджує пам'ять, то це шматочок теми з розумних адмінських книжок, а саме з розділу " Автоматизація адміністрування".. так що можете собою пишається :)

  • Опишу і приведу приклади створення резервних копій використовуючи командний рядок.
  • "Детально" розпишу команду 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 сам би створив папку. Підстраховка \u003d)

Поясню по використовуваних ключів 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 *. *" \u003e\u003e 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 *. *" \u003e\u003e 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 - тисни ентер. Відкриється планувальник завдань, там простіше нікуди.

Успіхів!

З.И. Чи не бекапьте на логічних розділах тих же самих гвинтів.

Програм для створення резервних копій (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»Ми, як завжди, копіюємо файли.

Продовжуємо вивчати поштову програму 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! Сподіваюся, інформація даного уроку буде вам корисною і допоможе більш продуктивно працювати з цією чудовою програмою!

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

До вашої уваги - відносно простий скрипт (CMD-сценарій), який реалізує резервне копіювання із заданою глибиною архівації.

Скрипт призначений для створення резервних копій шляхом упаковки в архів вмісту довільного каталогу. Крім власне підтримки глибини архівації в скрипті раеалізовано збереження нових резервних копій в каталоги, імена яких формуються на основі дати / часу резервування. При виконанні архівації RAR намагатиметься відкривати також спільно використовувані файли (буває корисно, щоб не змушувати користувачів обов'язково вийти з програми, наприклад, при резервуванні файлових баз 1С). Зручніше за все використовувати такий підхід до резервування даних, якщо прописати запуск скрипта в планувальник.

Вміст скрипта:

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

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

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

У змінних, що містять шляхи до файлів / каталогів, можна використовувати і абсолютні, і відносні шляхи, а також прогалини.

У прикладі міститься тільки один блок безпосереднього створення резервної копії (розташований після відповідного коментаря). Можна додати кілька таких блоків один за іншим, наприклад, скопіпастів наявний блок і змінивши значення змінних SrcData і ArcName.

Резервні копії розкладаються в каталоги, імена яких містять дату і час виконання резервування в наступному порядку: рік, місяць, дата, години, хвилини, секунди, соті частки секунди (справедливо для російських регіональних налаштувань). Це необхідно для того, щоб алфавітна сортування списку резервних копій збігалася з сортуванням за датою / часом створення копій (тобто просто для зручності роботи з копіями). У разі використання регіональних налаштувань, в яких порядок проходження елементів дати інший, для отримання аналогічного ефекту необхідно змінити порядок токенов %% a - %% g в команді
SET NewBkDir \u003d% 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 BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму