Shell (шелл) у Linux — це програма, яка приймає команди від користувача та передає їх операційній системі для виконання. Це інтерфейс між людиною й системою.
Простіше кажучи: Shell — це посередник між вами та ядром Linux. Ви вводите команду → Shell її інтерпретує → ядро виконує → Shell показує результат.
Це текстовий інтерфейс для роботи з системою.
Коли ви вводите: ls, cd чиmkdir — це все інтерпретує саме Shell.
Shell:
- читає команду
- розбирає її
- запускає потрібну програму
- показує результат
Shell — це програма-інтерпретатор команд
Shell може:
- виконувати команди
- створювати змінні
- підтримувати цикли, умови, функції
- запускати скрипти
- обробляти перенаправлення (>, <)
- конвеєри (|)
Усе це робить його маленькою мовою програмування.
Поширені Shell в Linux
| Назва | Повна назва | Особливості |
| bash | Bourne Again Shell | За замовчуванням у більшості систем, найпопулярніший |
| sh | Bourne Shell | Найстаріший стандарт |
| fish | Friendly Interactive Shell | Дуже зручний, сучасний |
| ksh | Korn Shell | Старий, але функціональний |
| tcsh | C Shell | Синтаксис схожий на C |
| У 90% випадків користувач Linux працює саме з Bash. Дізнатися, який shell ви використовуєте: echo $SHELL | ||
Shell не = Terminal
Інколи виникає плутанина, особливо на початковому етапі.
- Terminal — це програма-вікно, яка дає доступ до shell (наприклад, GNOME Terminal, iTerm2).
- Shell — це те, що працює всередині терміналу.
Іншими словами: Термінал = екран, а Shell = безпосередньо інтерпретатор команд.
Навіщо потрібен Shell?
- ефективне керування системою
- автоматизація (скрипти, cron)
- робота з серверами
- DevOps інструменти (Docker, Git, Kubernetes) інтегровані в shell
- доступ через SSH
- виконання десятків задач значно швидше, ніж у графічному інтерфейсі
Для додаткової візуалізації є відео.