Page 36 - 4820
P. 36

ЛАБОРАТОРНА РОБОТА № 7
                  ПРОФЕСІЙНА РОБОТА З КОМАНДНИМИ ОБОЛОНКАМИ

                   Мета  роботи:  оволодіння  практичними  навичками  професійної  роботи  з
            командною оболонкою shell – використання змінних і створення командних файлів.

                   7.1 Теоретичні відомості
                   У попередніх роботах ми вже познайомились з командними оболонками (shell).
            У  цій  роботі  розглянемо  прийоми  професійної  роботи  з  командними  оболонками,  а
            саме використання змінних оточення і створення командних файлів.
                   Командний  файл,  або  сценарій  (також  дуже  часто  кажуть  “скрипт”  від
            англійського  script  –  сценарій)  є  текстовим  файлом,  який  оформлено  з  дотриманням
            певних правил, і який містить команди, у найпростішому випадку повністю аналогічні
            тим командам, що вводяться з клавіатури. Командна оболонка здатна запускати такий
            файл  на  виконання  і  послідовно  виконувати  команди,  що  містяться  в  ньому.  Для
            користувача, що запустив цей сценарій, його виконання буде виглядати як виконання
            звичайної програми.
                   Зверніть увагу на розбіжності у різних програмних оболонках shell, які суттєві
            для  програмування.  Під  час  виконання  роботи  впевніться,  в  якій  із  програмних
            оболонок Ви працюєте (зазвичай, для FreeBSD це csh чи tcsh, а для Linux – bash, який є
            розвитком  sh),  і  яка  буде  запускатись  для  виконання  Вашого  командного  файлу  (це
            визначається першим рядком Вашого командного файлу). Уважно прочитайте правила
            використання операторів if і формування перевірки відповідної умови. Зверніть увагу
            на команду test.
                   Важливою  можливістю  командних  оболонок  (усіх)  є  обробка  так  званих
            пакетних файлів.

                   7.2 Хід роботи
                   1.  Створити  командний  файл,  який  буде  виконувати  завдання  пп. 1-3
            Лабораторної роботи № 5 відповідно до індивідуального завданя.
                   2.  Модифікувати  конфігураційний  файл  shell,  щоб  системне  запрошення  мало
            вигляд "Hello, <ім’я>", а перед виводом системного запрошення на початку роботи shell
            друкував на екрані велике вітання з інформацією про систему, поточну дату і час.
                   3. Записати у файл ~/lab_6/res_3 список файлів у каталозі, ім'я якого зазначено в
            системній  змінний  x,  якщо  він  існує;  у  противному  випадку  в  цей  файл  повинен
            записатися рядок "Error". При цьому на екрані не повинно з'явитися повідомлення від
            команди ls у випадку відсутності каталогу.
                   4. Задати системну змінну MY_DIR, значенням якої повинно стати ім’я каталогу
            з  завдання  пп.  7,  8  Лабораторної  роботи  №  5.  Повторити  завдання  попереднього
            пункту,  використовуючи  призначену  системну  змінну  і  записуючи  результат  у  файл
            ~/lab_6/res_4.
                   5.Створити  командний  файл,  що  виконує  наступне:  у  випадку,  якщо  файл
            my_file існує,  то  виводить його вміст;  у противному випадку виводить повідомлення
            "File  <ім’я  файлу>  not  found".  Перед  виводом  вмісту  файлу  повинен  друкуватися
            заголовок  "Вміст  файлу  <ім’я  файлу>".  При  цьому  на  екрані  не  повинні  з'явитися
            повідомлення,  видавані  системними командами.  Використовувати  механізм  умовного



                                                        34
   31   32   33   34   35   36   37   38   39   40