Команди Bash та програмування Bash - Урок 6

Кожен скрипт bash повинен починатися з цього вступу. Цей вступ визначає оболонку, за допомогою якої повинен виконуватися сценарій. Ім'я, включаючи шлях, там також дозволено для будь-якої іншої бажаної оболонки, за умови, що це буде використано. Часто #!/Bin/sh також використовується для того, щоб програму також можна було використовувати на комп'ютері, на якому, наприклад, запущена оболонка sh. Існує також посилання на/bin/bash під Linux/bin/sh. Отже, сценарій з #!/Bin/sh також може бути виконаний на будь-якому комп'ютері Linux. Я віддаю перевагу #!/Bin/bash, оскільки, з одного боку, оболонка bash і sh не є 100% сумісною, а з іншого боку, ймовірність того, що скрипт буде працювати на комп'ютері, який не працює під Linux, дуже низька.

урок

Крапка з комою використовується для розділення команд. Якщо в текстовій консолі ввести такі команди

1, що підлягає поверненню. Однак мені це не відомо. Я ще не знайшов джерела для цього. Потім, можливо, доведеться визначити експериментально.

Зазвичай ця функція використовується для оцінки помилок. У наступному розділі "Тестова команда" це буде використано на практиці.

Тестова команда використовується для перевірки типів файлів або існування файлів та порівняння значень. Дзвінок здійснюється за допомогою

де порівняння містить тест або порівняння. Як результат, тест повертає 0 для true і 1 для false. Повернене значення генерується за допомогою власної змінної оболонки $? визначається.

Існують порівняння файлів (файл), рядків символів (рядок) та цілих чисел (ціле число). Цілі числа - цілі числа, тобто без десяткових знаків!

порівняння Пояснення
STRING1 == STRING2 string1 і string2 однакові
STRING1! = STRING2 string1 і string2 - це не одне і те ж
INTEGER1 -екв. INTEGER2 Ціле число-число - те саме, що і число - число2
INTEGER1 -gt INTEGER2 Ціле число1 більше, ніж ціле число2
INTEGER1 -lt INTEGER2 Ціле число1 менше, ніж ціле число2
-d ФАЙЛ Файл FILE існує і є каталогом
-f ФАЙЛ Файл FILE існує і є звичайним файлом

Список порівнянь неповний. Значно більше порівнянь можна знайти за тестом "людина 1".

Ви можете поєднати кілька порівнянь з логічним І (І) або логічним АБО (АБО). Для посилання І порівняння поєднуються з -a, для посилання АБО -o.

Порівняння1 -а Порівняння2 -а. -порівняння N           AND операція

Порівняти1 -о Порівняти2 -о. -o порівняння N         АБО посилання

У разі посилання AND, всі порівняння мають бути TRUE, тобто повертати значення 0, щоб весь вираз був TRUE. За посиланням АБО, одне з порівнянь має бути TRUE, щоб весь вираз був TRUE.

Існує два написання командного тесту. Перший

Необхідно дотримуватися проміжків між квадратними дужками та порівнянням!

Ось кілька прикладів із першим позначенням: