Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_lab_OSUNIX_2006-ukr.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
759.81 Кб
Скачать

2.7 Контрольні запитання

1. У якому режимі знаходиться редактор після його активації?

2. Які дії потрібно виконати, щоб повернутися з режиму вводу до командного режиму?

3. За допомогою якої команди можна відкрити новий рядок у режимі вводу?

4. Як знайти шаблон у файлі?

5. Як повторити пошук шаблону?

6. Як повторити пошук шаблону у зворотному напрямку?

7. Як вилучити з буфера рядок?

8. Як відмовитися від виконаної команди?

9. Як зберегти кілька рядків буфера у файлі?

10. Як завершити роботу редактора без збереження буфера редактора?

11. Як завершити роботу редактора без запису буфера у файл?

3 Shell. Змінні оболонки shell. Застосування файла .Profile

3.1 Мета роботи

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

3.2 Підготовка до роботи

Перед лабораторною роботою слід повторити матеріал за курсом лекцій та за рекомендованою літературою [1,2,3,4].

3.3 Методичні вказівки до виконання роботи

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

3.3.1 Послідовність інтерпретації командного рядка shell

Shell виконує таку послідовність дій з інтерпретації командного рядка (дій) користувача:

  1. Читати вхідний рядок та виконати синтаксичний розбір.

  2. Виконати словниковий супровід розбору.

  3. Виконати підстановку параметрів.

  4. Виконати підстановку команд.

  5. Перевизначити пристрої вводу-виводу.

  6. Обробити внутрішні розподіли полів.

  7. Розкрити найменування файла(ів).

  8. Виконати трасування виконання.

  9. Обробити змінні середовища.

  10. Виконати команду.

Цю послідовність дій слід запам’ятати, бо це є засадою розуміння послідовності дій будь-якого інтерпретатора операційної системи. Але є виключення, коли потрібно використовувати команду eval, для додаткової підстановки у командному рядку. Таку ситуацію буде розглянуто у наступній лабораторній роботі.

3.3.2 Команда echo

Команда echo застосовується як допоміжна команда системи, щоб мати можливість вивести значення змінних або результату виконання команди системи на стандартний вивід. Команда має такий синтаксис:

echo [опції] [аргументи]

У цьому випадку команда копіює свої аргументи на стандартний вивід.

3.3.3 Змінні середовища виконання

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

HOME – програма login призначає цій змінній значення (повний шлях) до домашнього каталога користувача. Команда cd, вказана без аргументів, використовує значення змінної HOME для виконання команди.

IFS – ця змінна визначає, які символи є внутрішніми символами, що розмежують поля. Інтерпретатор shell зазначає, що змінна має значення – розподільник, знак табуляції або символ нового рядка. Усі інші символи встановлюються перевизначенням змінної.

MAIL – ця змінна має повне ім’я файла (з шляхами), куди надходить пошта. Коли змінна встановлена, то shell перевіряє було додано чи ні до вказаного файла. Якщо було – формує повідомлення про надходження нової пошти. Змінна MAIL встановлюється у файлі користувача .profile

MAILCHECK – ця змінна задає з якою частотою (у секундах) перевіряється надходження пошти користувачу. Звичайно система встановлює інтервал 600 секунд.

MAILPATH – ця змінна має список імен файлів, що поділені «:». Коли у перелічені файли надходить пошта - shell інформує користувача про надходження.

SHELL ця змінна вказує, який інтерпретатор потрібно активізувати користувачу при реєстрації останнього у системи.

PATH ця змінна вказує шляхи, за якими виконується пошук команд системи. Її значення є переліком повних імен каталогів, поділених символом «:». Якщо першим символом є «:», то це говорить проте, що пошук команд слід починати з поточного каталога. Наведемо кілька прикладів використання змінної у файлі .profile:

PATH=/bin:/usr/bin або PATH=$HOME/bin:/bin:/usr/bin або

PATH=:/bin:/usr/bin

PS1 – ця змінна вказує, яку послідовність символів буде використано як первинне запрошення системи.

PS2 – ця змінна вказує, яку послідовність символів буде використано як другорядне запрошення системи.

Користувач має можливість самостійно встановлювати значення перелічених змінних у файлі .profile, або під час виконання завдання. Але слід пам’ятати, що у цьому випадку потрібно використовувати команду export, щоб передати нове значення змінної(их) до усіх процесів, що будуть породжені поточним процесом. Наведемо приклад використання команди export:

export HOME IFS MAIL PATH PS1 PS2

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]