Регулярні вирази Bash: керівництво по створенню, застосування, приклади

Інтерактивний запуск

З мінімальним спрощенням можна сказати, що оболонка – це програма, яка інтерактивно завжди виконує одну і ту ж операцію. Вона очікує введення команди в якості вхідних даних, оцінює її, щоб переконатися, що команда синтаксично коректна, і виконує її, потім повертається, щоб чекати наступної команди. Цей процес закінчується, коли оболонка отримує сигнал, який вказує, що вхід завершений і ніякі інші команди не будуть відправлені на нього. У цей момент завершується програма оболонки, звільняючи виділену пам’ять та інші машинні ресурси, доступні операційній системі.

Сценарій запускається автоматично операційною системою, коли користувач входить у саму систему, тобто може бути виконано користувачем за допомогою команди, заданої на вже відкритої оболонці, або за допомогою спеціальних графічних утиліт, якщо він працює з системою з графічним інтерфейсом користувача. Наприклад, на комп’ютері Apple Macintosh під управлінням Mac OS X можна використовувати командну оболонку, запустивши утиліту Terminal, розташовану в Utility в папці «Додаток».

На робочій станції Linux з графічним менеджером робочого столу, наприклад GNOME або KDE, можна відкрити командну оболонку, вибравши програму «Термінал» з меню «Програми → Аксесуари». Після активації командної оболонки можна переглянути ім’я використовуваної нами оболонки, виконавши наступні команди:

  • $ echo;
  • $SHELL /bin/bash.

Якщо оболонка за замовчуванням не є Bash, можна перевірити, чи присутня вона у системі в одному з каталогів, перерахованих у змінній середовища PATH, використовуючи команду «which», і виконати його за допомогою команди «bash»:

  • $ echo $SHELL /bin/tcsh $ which bash /bin/bash $ bash bash-2.03$.

Оболонка, таким чином, працює в інтерактивному режимі, отримуючи вхідні дані в кожну окрему команду і параметри, зазначені в командному рядку, та виконуючи саму команду. Висновок відображається в тому ж вікні терміналу. Кожна команда, яка передається оболонці, закінчується натисканням клавіші Invio/Enter. Можна випустити декілька команд в одному рядку, відокремлюючи їх один від одного символом «;». Також можливо розбити вставку команди на дві або більше рядків, закінчуючи кожну проміжну рядок символом « ».