Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання icon

Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання




НазваМетодичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання
Сторінка5/8
Дата конвертації10.04.2013
Розмір0.66 Mb.
ТипМетодичні вказівки
1   2   3   4   5   6   7   8
^

Завдання до виконання


  1. Створіть каталог lab_2.

  2. Скопіюйте в каталог lab_2 файл /bin/cat під назвою my_cat

  3. За допомогою файлу my_cat, що знаходиться в каталозі lab_2, перегляньте уміст файлу .profile (Ви знаходитесь у домашньому каталозі).

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

  5. Змініть права доступу до файлу my_cat так, щоб власник міг тільки читати цей файл.

  6. Переконайтеся в тім, що ви зробили ці зміни і повторіть п.3.

  7. Визначте права на файл my_cat таким чином, щоб Ви могли робити з файлом усе, що завгодно, а всі інші — нічого не могли робити.

  8. Поверніться в домашній каталог. Змініть права доступу до каталогу lab_2 так, щоб ви могли його тільки читати.

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

  10. Поясніть отримані результати. Результати виконання п.8 можуть бути різними в різних версіях UNIX, зокрема, Linux і FreeBSD. Прокоментуйте отримані результати у висновках.

  11. Завантажтесь в систему, користуючись обліковим записом іншого користувача. (Вам потрібно знати пароль цього користувача.) Якщо Ви не маєте прав адміністратора, попросіть адміністратора створити для Вас тимчасово інший обліковий запис. Спробуйте отримати доступ до Вашого каталогу lab_2. Перевірте, чи правильно зроблено завдання попереднього пункту. Створіть каталог lab_2_2.

  12. Знову завантажтесь в систему, користуючись своїм обліковим записом4. Спробуйте зробити власником каталогу lab_2 іншого користувача. Спробуйте зробити себе власником каталогу lab_2_2. Поясніть результати.

  13. Зайдіть у каталог lab_2. Зробіть так, щоб нові створені файли і каталоги діставали права доступу згідно Таблиці (див. наступну сторінку). Створіть новий файл і каталог і переконайтеся в правильності ваших установок.



    варіант

    Права для файлів

    Права для каталогів

    1

    644

    754

    2

    664

    774

    3

    6-4

    7-5

    4

    62-

    73-

    5

    644

    745

    6

    664

    764

    7

    6-4

    715

    8

    62-

    63-

    9

    644

    744

    10

    664

    765


^

Лабораторна робота №3. Командна оболонка shell, стандартні потоки вводу/виводу, фільтри і конвеєри

Мета


Оволодіння практичними навичками перенаправлення стандартних потоків, роботи з фільтрами і організації конвеєрів
^

Завдання для самостійної підготовки

1.Вивчити:


  • командні оболонки, їх запуск, конфігураційні файли;

  • стандартні потоки і їх перенаправлення;

  • організацію конвеєрів;

  • організацію фільтрів і команди, використовувані як фільтри.
^

2.Ознайомитись з такими командами UNIX:


tee, find, cut, date, grep, sort

Звернути увагу на метасимволи *, ?, /, […], $ і на правила інтерпретації їх при використанні одинарних та подвійних лапок '…' та "…". Розібратись з використанням в командах операторів перенаправлення потоків і організації конвеєрів ">", "<", "|" і використанням псевдопристрою /dev/null.
^

3.Відповідно до завдання підготувати послідовність команд для його виконання

Довідковий матеріал


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

Кожна командна оболонка в процесі свого запуску робить налаштовування системного оточення, для чого використовує визначені файли. Їх щонайменше два – глобальний і локальний (деякі оболонки можуть використовувати більшу кількість конфігураційних файлів). Глобальні конфігураційні файли для всіх оболонок знаходяться в каталозі /etc. Локальні конфігураційні файли для всіх оболонок знаходяться в домашньому каталозі користувача. Імена конфігураційних файлів, як правило, закінчуються на ‘rc’. Локальні файли роблять “прихованими”, щоби вони не заважали користувачу в його повсякденній роботі (приховані файли мають ім’я, що починається з символу ‘.’,команда ls без параметрів їх не показує). Приклади конфігураційних файлів: для sh – /etc/profile і ~/.profile, для csh – /etc/cshrc і ~/.cshrc, для tcsh – /etc/cshrc і ~/.cshrc, а також /etc/tcshrc і ~/.tcshrc (двох останніх може і не бути).

Конфігураційні файли є звичайними командними файлами (докладніше про командні файли див. Лабораторну роботу №6).

Часто в якості параметру деякої команди нам треба вказати не один файл, а кілька файлів, назви яких мають певні спільні риси. В таких випадках використовують так звані маски пошуку. Спеціальний символ ‘?’ в масці означає один будь-який символ, а спеціальний символ ‘*’ – будь-яку послідовність символів. Наприклад, команда ls /bin/???? виведе на екран всі файли з каталогу /bin, імена яких складаються з чотирьох символів, а команда ls /etc/d* виведе на екран всі файли з каталогу /etc, імена яких починаються з літери d. Також можна задати список символів, наприклад, маска [abc]??? задає ім’я з чотирьох літер, перша з яких – a, b чи c.

Для пошуку файлів за певними ознаками можна використовувати команду find. Перший параметр цієї команди (обов’язковий) – це каталог, з якого починається пошук (наприклад, / – кореневий каталог), далі – параметр, що задає ознаку пошуку (наприклад, -name – пошук файлів, імена яких відповідають заданій масці, –atime – пошук файлів, дата модифікації яких відповідає заданій умові), далі іде власне маска пошуку, а далі – дія. Найтиповіша дія – –print, вивід результатів пошуку на екран. Якщо цей параметр не вказати, пошук відбуватись буде, а от результатів його видно не буде.

Наприклад:

find / -name "*.c" –print


виведе на екран список всіх файлів, імена яких мають розширення .с, тобто вихідних кодів на мові програмування С5.

Ще одна можливість оболонок – перенаправлення потоків вводу-виводу. Як правило, більшість команд (утиліт) приймає інформацію з клавіатури, або з файлу, якщо його вказано як параметр, і виводить результати на екран. Однак, фактично вони працюють із так званими стандартними потоками вводу і виводу, які пов’язані з певними файлами. Файл в системі UNIX розглядається як потік байт. Оскільки пристрої в UNIX розглядаються як файли, а операції вводу і виводу – як читання і запис у відповідні файли, це дозволяє легко переводити вхідний і вихідний потоки з файлів на пристрої чи навпаки.

Стандартний ввід за замовчанням зчитується з клавіатури. Якщо в якості параметру вказано ім’я файлу, то замість стандартного вводу відповідна утиліта буде організовувати вхідний потік з указаного файлу (але так діють не всі команди!) Вихідних потоків є два – стандартний потік виводу (за замовчанням в сучасних системах – на екран монітору), і потік повідомлень про помилки (за замовчанням – туди ж).

Оболонка дає змогу перенаправити потоки у заданий файл. Символ ‘<’ перенаправляє вхідний потік. Після цього символу очікується ім’я файлу або пристрою, з якого буде братись вхідний потік.

Наприклад, команда cat без параметрів очікує ввід з клавіатури, і кожний рядок передає на екран монітора. Команда cat my_file замість вводу з клавіатури виведе на екран вміст файлу my_file, якщо такий існує, і повідомлення про помилку, якщо такого не існує.

Команда cat < my_file на перший погляд буде робити те ж саме, але з точки зору операційної системи і самої утиліти cat все буде відбуватись по-іншому. В попередньому випадку командна оболонка запускала утиліту cat і передавала їй параметр командного рядка my_file, а сама утиліта cat вже інтерпретувала цей параметр як ім’я вхідного файлу. В останньому випадку командна оболонка запускала утиліту cat без параметрів, але передавала їй вміст файлу my_file в якості вхідного потоку.

Команда cat > my_file перенаправляє вихідний потік. Оскільки вхідний потік не перенаправляється, ввід буде очікуватись з клавіатури. Тому ця команда створить файл my_file, якщо він не існує, знищить вміст файлу my_file, якщо він існує, і буде записувати в цей файл все, що буде введено з клавіатури, аж поки не поступить символ кінця файлу EOF (Ctrl+D). Існує також можливість дописати інформацію в кінець файлу, не знищуючи його вмісту. Така команда буде мати вигляд cat >> my_file

Команда

cat < my_file1 > my_file2


перенаправляє як вхідний, так і вихідний потік. Якщо файл my_file1 існує, то його вміст буде записано в файл my_file2. Якщо не існує, то повідомлення про помилку буде виведено на екран. Потік повідомлень про помилки в оболонці sh перенаправляється окремо, він позначається 2>. Наприклад, команда

cat < my_file1 > my_file2 2> my_file3


у разі, якщо файл my_file1 існує, запише його вміст в файл my_file2, а якщо не існує, то запише повідомлення про помилку в файл my_file3. Важливо наголосити, що оболонки csh і tcsh не мають засобів безпосередньо перенаправляти потік повідомлень про помилки. Тим не менше, засобами цих оболонок також можна організувати окреме перенаправлення потоків завдяки хитрим прийомам програмування. Інформацію про це можна знайти в літературі.

Дуже часто потік помилок намагаються взагалі “загасити”. Для того, щоби знищити якийсь потік, існує спеціальний пристрій /dev/null. Все, що в нього направляється, зникає безслідно.

Перенаправлення вводу-виводу широко використовується у двох випадках. Перший – це запуск утиліт у фоновому режимі. Щоби їхня робота не заважала роботі користувача з терміналом, слід так перенаправити потоки вводу-виводу, щоби вони працювали лише з файлами. Другий – це використання спеціальних команд-утиліт, які призначені саме для того, щоби прийняти певну інформацію з одного файлу, обробити її, а результат записати у другий файл. Такі утиліти називаються фільтрами. Утиліта cat, варіанти використання якої з перенаправленням потоків було розглянуто вище – це простіший фільтр. Він практично не обробляє інформацію, лише може зчіплювати кілька файлів в один. Інші корисні фільтри: cut, grep, sort.

Утиліта cut переглядає вхідний файл, і виділяє з кожного його рядка інформацію за ознаками розміщення в певних колонках або полях. Наприклад, рядки файлу /etc/passwd розділяються на поля за допомогою символу ‘:’. Перше поле – login, п’яте поле – інформація про користувача. Якщо ми хочемо надрукувати лише цю інформацію, ми можемо дати команду:

cut –d: –f1,5 < /etc/passwd


Ключ –d задає символ-роздільник полів (у цьому випадку – ‘:’), ключ –f – список полів, що треба роздрукувати (у цьому випадку – 1 і 5).

Утиліта grep виводить лише ті рядки, в яких зустрічається заданий рядок пошуку. Утиліта sort виконує сортування вхідного потоку, наприклад, за абеткою. Докладніше про ці та інші фільтри вам слід дізнатися з довідкової системи man.

Існує можливість перенаправити вихідний потік однієї утиліти безпосередньо у вхідний потік іншої, без використання тимчасових файлів. Це так звані конвеєри. В системі UNIX всі утиліти, що поєднані в конвеєр, запускаються паралельно і обробляють інформацію по мірі її надходження. Конвеєр утворюється за допомогою символу ‘|’ таким чином:

util1 | util2 | util3


При утворені конвеєра окремо перенаправляти вхідні й вихідні потоки на проміжних стадіях не можна – це буде або сприйнято як синтаксична помилка, або результат може бути непередбачуваним.

Приклад конвеєру:

ps –al | grep root | more


Команда ps з ключами –al направить у вихідний потік список всіх процесів у системі, grep root вибере з них лише ті, які виконуються від імені root’а, more забезпечить вивід їх на екран посторінково. Інший приклад:

cat /etc/passwd | cut –d: –f1,5 | more


Ця команда зробить те ж саме, що й приклад з командою cut, що розглядався раніше, але вивід на екран буде посторінковим.

Якщо проміжні результати на якійсь із стадій конвеєра бажано зберегти, можна скористатись командою tee my_file. Ця команда візьме вхідний потік, передасть його без змін у вихідний потік і одночасно продублює у файл my_file6. Наприклад, так можна модифікувати один із розглянутих вище прикладів:

ps –al | grep root | tee my_file | more


Тепер ми не лише побачимо на екрані посторінково виведений список всіх процесів root’а, але й збережемо його у файлі my_file.
1   2   3   4   5   6   7   8



Схожі:

Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання
Операційні системи. Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форми навчання. /...
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до лабораторних занять для студентів спеціальності «Комп’ютерні системи та мережі» денної та заочної форми навчання
Периферійні пристої. Методичні вказівки до лабораторних робіт для студентів спеціальності «Комп’ютерні системи та мережі» денної...
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до виконання самостійної роботи студентів спеціальності ксм денної та заочної форми навчання
Операційні системи. Методичні вказівки до виконання самостійної роботи студентів спеціальності ксм денної та заочної форми навчання....
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до виконання контрольної роботи для студентів спеціальності ксм заочної форми навчання
Периферійні пристрої. Методичні вказівки до виконання контрольної роботи для студентів спеціальності ксм заочної форми навчання.,...
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до виконання лабораторних робіт з дисципліни «мова sql» для студентів денної форми навчання спеціальності
Методичні вказівки до виконання лабораторних робіт з дисципліни «Мова sql» для студентів денної форми навчання спеціальності 050....
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconКонспект лекцій для студентів спеціальності ксм
Операційні системи. Конспект лекцій для студентів спеціальності ксм денної та заочної форми навчання. / проф. Бурчак І. Н., Здолбіцький...
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до лабораторних занять (частина 1) Microsoft Word для студентів спеціальностей
Дані методичні вказівки включають 8 лабораторних робіт, по вивченню текстового редактора Word, тематика яких охоплює частину курсу...
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні рекомендації, вказівки, розробки, над якими працюють викладачі. № п/п Тема розробки Дисципліна Прізвище, ім’я, По батькові
Методичні вказівки до лабораторних занять для студентів усіх спеціальностей денної форми навчання
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до курсового проектування для студентів денної та заочної форм навчання фаху 091501
До курсового проектування для студентів денної та заочної форм навчання фаху 091501
Методичні вказівки до лабораторних занять для студентів спеціальності ксм денної та заочної форм навчання iconМетодичні вказівки до лабораторних робіт для студентів денної форми навчання факультету інформатики та обчислювальної техніки Затверджено Методичною радою нтуу „кпі
Загальна фізика. Квантова фізика : методичні вказівки до виконання лабораторних робіт для студентів денної форми навчання факультету...
Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©te.zavantag.com 2000-2017
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи