Новости

Як написати свій bat файл для створення резервної копії

  1. Bat файл - що до чого, вступна
  2. Як створити bat файл і використовувати його
  3. Додаємо в файл команду, наприклад, для копіювання
  4. Післямова

Сьогодні ми дізнаємося про те, що таке 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. Зайдіть в неї і створіть в ній папку testcopy.

Накидали туди файлів (штук 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 (на питання системи чи варто це робити відповідаємо ствердно).

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

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

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

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

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

до змісту ↑

Післямова

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

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

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

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

Ми в соц.сетях: ВК Facebook Twitter Telegram

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

Или позвоните нам по телефонам: (048) 823-25-64

Организация (обязательно) *

Адрес доставки

Объем

Как с вами связаться:

Имя

Телефон (обязательно) *

Мобильный телефон

Ваш E-Mail

Дополнительная информация: