- •Теоретичні відомості:
- •Історія створення та статус Linux
- •Вхід та вихід з системи
- •Деякі прості команди
- •Файлові системи та каталоги
- •Файли та шляхи
- •Звичайні файли
- •Каталоги
- •Каталоги та фізичні диски
- •Посилання (зв”язки)
- •Спеціальні файли
- •Права доступу до файлів
- •Стандартні каталоги Linux
- •Хід роботи та індивідуальні завдання
- •Лабораторна робота №2
- •Теоретичні відомості
- •Отримання списку файлів
- •Організація файлів
- •Копіювання файлів
- •Переміщення та перейменування файлів
- •Видалення файлів та каталогів
- •Перегляд вмісту файлів
- •Пошук файлів
- •Сортування текстових файлів
- •Переспрямування вводу та виводу
- •Хід роботи та індивідуальні завдання
- •Лабораторна робота №3
- •Теоретичні відомості:
- •Налаштування робочого середовища
- •Завдання назв файлів
- •Передавання даних між процесами з використанням каналів (pipes)
- •Використання змінних оточення
- •Підстановка результата виконання команди
- •Групи команд та породжені оболонки
- •Редагування команд оболонки та використання псевдонімів
- •Робота з командними скріптами оболонки
- •Використання у програмах спеціальних символів
- •Використання команд керування процесом виконання
- •Хід роботи
- •Лабораторна робота №4
- •Теоретичні відомості:
- •Формування розділів жорсткого диску
- •Завантаження та ініціалізація ядра
- •Хід роботи
- •Лабораторна робота №5
- •Теоретичні відомості:
- •Визначення прав доступу до файлів
- •Робота з користувачами системи
- •Виконання окремих команд від імені адміністратора
- •Хід роботи
- •Лабораторна робота №6
- •Використання утіліти nmblookup
- •Доступ до ресурсів з використинням smbclient
- •Монтування та демонтування каталогів спільного використання Windows
- •Графічні оболонки для роботи з Samba
- •Хід роботи
Використання змінних оточення
Змінні оболонки відіграють важливу роль для налаштування та керування роботою ОС. Оболонка має інтерпретатор програмної мови, в якій важливу роль відіграють змінні оболонки.
Змінні оболоки зберігаються системою у вигляді текстових рядків. Якщо дві змінні розташовані у команді поряд? то відповідні їм рядки символіів об”єднуються. Наприклад. якщо є дві змінні X = hello та Y= world, то вираз $X$Y буде інтерпретуватися системою як helloworld. Команда
echo $Х $Y
виведе на екран hello world
Якщо виконання підстановки є неоднозначним для системи, вона обирає найпростіший шлях. Наприклад $XY буде інтерпретовано як helloY. Водночас, якщо існує змінна XY, то система підставить її значення. У сумнівних випадках треба використовувати дужки для завдання порядку підстановки. Наприклад, вираз $(X)Y буде вказувати системі. що спочатку треба підставити значення змінної X, а потім приєднати Y.
Підстановка результата виконання команди
Після підстановки значень змінних оболонка ще раз переглядає рядок у пошуку команд. включених як параметр у командний рядок (command substitution). Якщо таку команду знайдено, то команда-параметр виконується і її результат проставляється у командний рядок замість команди-параметра.
command-1 parameter `command-2`
Треба бути уважним при використанні символів подвійних лапок, апострофа (одиночних лапок) та зворотніх лапок.
Детальніше правила використання лапок наведені у таблиці.
Символ |
Значення |
“ |
Лапки відключають аналіз універсальних символів та виразів у назвах файлів та виділення параметрів. Однак, підстановка значень змінних та виконання команд відбувається |
' |
Відключає синтаксичний розбір. Усе, що міститься в одинарних лапках передається системі одним параметром |
` |
Рядок символів у зворотніх лапках сприймається к одна команда. Ця команда виконується, її стандартний вивід підставляється у первинну команду. |
Розглянемо наступний командний рядок:
echo Today\'s date and time are `date`
Результатом його виконання буде:
Today's date and time are Mon May 18 14:35:09 EST 1994
Зверніть увагу, що у тексті команди перед апострофом поставлено символ \. Майже кожен не алфавітно-цифровий символ має спеціальне значення для оболонки. Для того, щоб виключити інтерпретацію символа оболонкою, треба перед символом використати знак \. Якщо в тексті зустрічається сам знак \. то замість нього потрібно поставити \\.
Групи команд та породжені оболонки
Звичайно кожна команда завершується символом <Enter>. В деяких випадках, однак вигідно розмістити декілька команд в одному рядку. При цьому команди розділюються символами ;
command-1; command-2, command-3
Оболонка сприйме символ ; як символ нового рядка
Якщо потрібно переспрямувати вивід відразу для декількох команд, можна сформувати групу команд у такому форматі:
{command-1,command-2} > output-file
Вивід групи команд може бути переспрямовано у програмний канал:
{command-1,command-2} | command-3
Це означає, що спочатку виконується command-1 і її вивід надходить на вхід command-3, а потім – виконується command-2 і її вивід також надходить на вхід command-3.
Команди, що виконуються облонкою таким чином можуть змінювати змінні оточення та біжучий каталог. Для того, щоб цього не відбулося можна виконати у породженій оболонці (subshell), залишаючи усі налаштування біжучої оболонки без змін. Для цього замість фігурних дужок потрібно використати звичайні:
(command-1,command-2) | command-3
При цьому command-1 та command-2 будуть виконані в окремій оболонці а їх вивід (вже у біжучій оболонці) буде спрямовано на вхід command-3
