Оболонки Unix / Linux 101

Автор: Eugene Taylor
Дата Створення: 11 Серпень 2021
Дата Оновлення: 22 Червень 2024
Anonim
Introduction to UNIX | UNIX Tutorial for Beginners | UNIX Training | Edureka
Відеоролик: Introduction to UNIX | UNIX Tutorial for Beginners | UNIX Training | Edureka

Зміст



Джерело: Томаш Бідерманн / Dreamstime.com

Винос:

Оболонки Unix та Linux дуже потужні та надзвичайно налаштовані.

Командний рядок у системах Unix та Linux вже дуже потужний, але оболонки - ще більш потужний інструмент, ніж очі. Ви можете налаштувати їх і переключити їх на зміст серця, поки ви знаєте, як.

Що таке оболонка?

Майже в кожному посібнику для Unix та Linux є стандартна схема оболонки, що обертається навколо операційної системи, що нагадує якусь цукерку. Оболонка насправді є не що інше, як інтерфейс між операційною системою, включаючи ядро, файлову систему та різні системні виклики та користувача. Протягом багатьох років це був єдиний інтерактивний користувальницький інтерфейс до того, як графічні інтерфейси користувачів стали поширеними у 1980-х роках. Графічні користувальницькі інтерфейси також можна вважати типом оболонки, оскільки вони виконують багато однакових функцій: запуск програм, налаштування системи та управління файлами.

Ці скромні інтерфейси мають дивовижну кількість потужності. По-перше, вони є повноцінними мовами програмування. До появи ще більш потужних мов скриптів, таких як Python, сценарії оболонки були ідеальними для написання програм, яким не обов'язково потрібна сила C. Вони все ще корисні для автоматизації системних завдань та швидкого прототипування.

Вони також мають ряд функцій, які полегшують роботу з пошуком файлів. Одним з найбільш широко використовуваних є "wildcarding" або "globing". Практично всі користувачі Unix та Linux знайомі зі знаком "*", щоб відповідати будь-якому символу. Це насправді робота оболонки. У різних оболонок є ще більш потужні варіанти.

Однією з відмінних особливостей Unix є можливість перенаправлення вводу та виведення програми. Оболонка реалізує цю функціональність.

Оболонка - це лише інша програма, тому створити програму можна будь-якому програмісту, який має правильні навички. Існувало кілька основних снарядів, які з’явилися за ці роки.

Історія та перелік раковин

Незважаючи на те, що в перші дні операційної системи було декілька оболонок Unix, першим, який отримав головне визнання поза лабораторіями Bell, була оболонка Борна, названа на честь Стівена Р. Борна. Основним нововведенням оболонок було те, що він підтримував функції для структурованого програмування, що дало можливість вперше використовувати оболонку як справжню мову програмування. Він настільки незамінний, що всі сучасні версії Unix та Linux все ще користуються ним, хоча зазвичай це одна з новіших оболонок, що імітують оболонку Bourne.

Наступною основною оболонкою була оболонка C, яку зазвичай скорочують як "csh". Ця оболонка була розроблена в UC Berkeley і стала головним компонентом BSD-аромату Unix. Як випливає з назви, його синтаксис розроблений так, щоб нагадувати мову програмування C, але він був дійсно розроблений для інтерактивного використання.

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

Наступною основною оболонкою була Корнова оболонка, яка також вийшла з лабораторій Белл. Шкарлупа названа на честь Девіда Корна, а не група, до речі. Основна інновація оболонки Korn - це введення редагування командного рядка, що ще більше розширює функціонал історії. Користувачі можуть повертатися та редагувати введені ними команди за допомогою команд, аналогічних редакторам vi або Emacs.

З основних оболонок найпопулярнішим є панцир Bourne Again, або баш, з моменту його впровадження в кінці 80-х. Ця оболонка, розроблена як частина проекту GNU, включає інновації оболонок C і Korn, зберігаючи сумісність із оболонкою Bourne, звідси і назва. Це "стандартна" оболонка для більшості дистрибутивів Linux.

Z Shell (zsh), вперше випущений у 1990 році, - мрія користувача командного рядка. Він не тільки має більшість інших основних функцій, які мають інші оболонки, але божевільно налаштовується безліччю потужних функцій. Одним з найпотужніших є рекурсивна глобалізація, яка дозволяє користувачам співставляти назви файлів у підкаталогах при видачі команд, а не файлів у поточному робочому каталозі. Дійсно просунуті користувачі також можуть налаштувати параметри завершення, збігаючи файли без необхідності їх друку. А для жирних машинописницьких машинописів це також може виправити ваш правопис. Ця оболонка настільки вдосконалена, її сторінку керівництва була розділена на кілька дуже довгих розділів.

Сценарій

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

Незважаючи на їх потужність, програмування в оболонках має кілька підводних каменів. Найбільша проблема полягає в тому, що писати сценарії, які залежать від якоїсь програми, яка може не бути в іншій системі, або що залежить від певного аромату Unix чи Linux, занадто просто. Ось чому сценарії оболонки найкраще підходять для програм, про які ви знаєте, що запускаються лише в одній системі. Якщо ви намагаєтеся створити щось портативне і не хочете писати програму на С, найкраще зробити це написати іншою мовою сценаріїв, наприклад Perl або Python.

Заглянути під кришку командного рядка Unix / Linux

Більше потужності ховається під поверхнею вашого командного рядка Unix / Linux. Ця стаття може надихнути вас заглянути під кришку улюбленої оболонки, щоб побачити, що ви дійсно можете зробити. Якщо ви хочете потрапити в сценарій оболонок, ви можете перевірити книги Unix Power Tools та Learning the Bash Shell. Оригінальний папір Стівена Р.Борнса на його оболонці також служить гарним введенням у світ сценаріїв оболонок, навіть якщо він старий.