Урок 2 з CMD - оператори командного рядка
У цій статті ми розглянемо базові оператори cmd командного рядка введення-виведення даних, математичні вирази, а також оператори, які дозволяють об'єднати декілька команд.

Командний рядок дозволяє передавати значення чи дані у консольному вікні, а й поза межами. Так, можна перенаправити результат виконання утиліти у файл, або ж навпаки, витягти дані, що зберігаються у зовнішньому файлі, і передати їх як параметри.
Давайте подивимося на наступні оператори командного рядка:
- Команда1 команда2 – результат, отриманий після виконання команди1, буде служити як вхідний параметр для команди2.
- Команда - Тут команда приймає вміст файлу як вхідний параметр.
- Команда>[шлях] ім'я файлу – Результат виконання команди буде виведений не на екран консолі, а у зовнішній файл. Якщо зазначеного зовнішнього файлу немає, то він буде створений, якщо файл існує – відбудеться його перезапис.
- Команда>>[шлях] ім'я файла – Аналог попередньої команди, але тут, якщо файл існує, до дані допишуться в кінець вже наявних у ньому даних.
- Команда [шлях] ім'я файла – у цьому прикладі, дані, із зовнішнього файла передаються команді як параметри, а виведення результату буде надсилатися до іншого зовнішнього документа.

Як ви вже помітили, перенаправлення даних здійснюється за допомогою чотирьох операторів (cmd) командного рядка: висновок (>, >>) та введення (
Тепер звернемо увагу наоператор конвеєризації (“”), він досить зручний, тому що дозволяє передавати результат виконання з однієї команди відразу в іншу, а з тієї в третю і так далі.
Наприклад, утиліта dir дозволяє отримати список файлів і папок, аутиліта find відповідає за пошук у документах, або у тексті введення та виводить рядки, що відповідають умові. Так, наступна команда покаже список всіх файлів з розширенням .txt у поточному каталозі:
У даному випадку утиліта dir повертає список файлів і папок у поточному каталозі, цей список передається як вхідний параметр утиліті find (зробіть статтю "Утиліта FIND"), і вже в цьому списку відбувається пошук входження “.txt”.
Наступні оператори командного рядка, які варто розглянути, це &, && і :
- Команда1 & Команда2 - спочатку виконуються Команда1, а вже потім Команда2
- Команда1 && Команда2 - Команда2 виконуватиметься лише в тому випадку, якщо відбулося успішне виконання Команди1
- Команда1 Команда2 - Команда2 виконуватиметься лише в тому випадку, якщо Команда1 не змогла виконатися.
- (Команда1 & Команда2) && Команда3 – Тут за допомогою круглих дужок відбувається групування Команди1 та Команди2, якщо дана група команд виконається успішно, відбудеться виконання Команди3.
- (Команда1 & Команда2) Команда3 - Тут за допомогою круглих дужок відбувається групування Команди1 і Команди2, якщо дана група команд не виконується, відбудеться виконання Команди3.
Як бачимо, оператори командного рядка (cmd), наведені вище, дозволяють значно заощадити програмний код і в деяких випадках замінити умовний оператор if і навіть цикл.
Варто зважати на один важливий момент. При виконанні групи команд їх обов'язково варто укладати в круглі дужки, інакше станеться зовсім інший результат, ніж очікувалося. Подивимося на такий приклад:
Спочатку здасться, що файл log.txt повинен вивестися вміст поточного каталогу,налаштування мережі та ім'я комп'ютера, але це не так! Файл міститиме лише результат виконання командиhostname. Щоб усе спрацювало правильно, потрібно всі три команди укласти в круглі дужки:
Добре тепер розглянь математичні оператори cmd (командного рядка). Як і в мовах програмування vbscript і jscript сервера Windows Script Host, у сценаріях cmd присутні такі математичні вирази:
- арифметичні оператори – виконання рядових математичних операцій (+ (додавання), - (віднімання), * (множення), /(поділ), % (модуль));
- оператори присвоювання - знак рівності без або з арифметичними операціями.
- оператори порівняння – відповідають за порівняння між собою двох операндів, як правило, використовуються в умовному операторі if.
- побітові оператори - робота з двійковими даними.
Щоб вам не доводилося робити додаткові переходи, а ви могли запустити сценарій з будь-якої директорії у вікні командного рядка, просто пропишіть:
Тут шлях до каталогу, в якому ви зберігаєте свій сценарій.
Повернемося наприклад, у цьому прикладі за допомогою ключового слова set ми оголошуємо змінну var1, яка зберігатиме суму чисел 100 і 25, після виведення результату на екран. Далі ми використовуємо решту математичних операцій з подальшим висновком результату.
Діапазон підтримуваних цифр від -2 до 32 ступеня до 2 до 32 ступеня, при виході за цей кордон, виникне помилка з кодом -2. Можна проводити обчислення не лише з цифрами, а й із значеннями змінних:
В даному випадку ми спочатку оголошуємо дві змінні, var2 зі значенням 100 і var3 зі значенням 200, потім у змінній var1 відбувається додавання значень двох змінних, ірозподіл результату на два з подальшим його виведенням на екран.
Корисну роль можуть відіграти оператори порівняння:
- += (складання та присвоєння)
- -= (віднімання та присвоєння)
- *= (множення та привласнення)
- /= (Поділ та присвоєння)
- %= (розподіл по модулю та присвоєння)

Подібні оператори застосовуються і в мові jscript і дозволяють замість такого рядка:
І так, у цій статті ми розглянули базові cmd оператори командного рядка.
Дякую за увагу. Автор блогу Володимир Баталій