- •1. Екскурс до історичного розвитку os Unix
- •1.1 Виникнення os Unix
- •Сучасний стан os Unix
- •2. Unix на платформі Intel
- •3.1 Спільні принципи інсталяції
- •4. Введення в архітектуру ядра os Linux.
- •5. Основні поняття
- •5.1 Початок роботи
- •5.2 Вхід до системи
- •5.3 Ввод команд
- •5.4 Ввод командного рядка
- •5.5 Команди редагуванняя командного рядка
- •5.6 Керування процесом
- •5.7 Отримання списку процесів, що виконуються ps
- •5.8 Знищення процесу Del, Kill
- •5.9 Призупинка вводу на екран Ctrl-s
- •5.10 Використання калькуляторів
- •6. Початкове завантаження os Unix
- •Особливості завантаження os Unix
- •Інсталяція ядра
- •Допоміжні засоби для визначення os Unix
- •9. Файлова система Unix
- •9.1 Будова файлової системи Unix
- •9.2 Робота з файлами
- •9.3 Генерація імен файлів за допомогою метасимволів
- •10. Робота з каталогами
- •10.1 Права доступа до файлів та каталогів Для визначення прав доступу, зв’язаних з конкретним файлом або каталогом використовується команда ls –l:
- •Інші дев’ять символів додають три набори по три символи: перший – для індивідуального користувача;
- •10.2 Побудова командного рядка
- •10.3 Переадресація вводу та виводу
- •11. Конвeйори
- •12. Використання друкуючих пристроїв
- •13. Зв’язок з системою unix
- •14. Команда calendar
- •15. Спілкування з користувачем ззовні системи Unix
- •16. Процесори інтерпритаторa b-shell
- •16.1 Зарезервовані змінні
- •17. Керуючі структури у мові b-shell
- •17.1 Завдання директив інтерпретатору shell. Групування
- •17.2 Умовне виконання
- •17.3 Змінні інтерпретатора b-shell
- •2.1 Процедури інтерпритатора shell
- •17.3.2 Вкладені цикли
- •17.4 Керування перериваннями
- •17.5 Преревірка файлів, числових значень та ланцюжків символів
- •17.6 Зарезервовані змінні
16.1 Зарезервовані змінні
Ці спеціальні змінні встановлюються інтерпретатором shell, а не користувачем.
# - кількість аргументів. Кількість параметрів не враховуючи $0, які використано для запису аргументів.
$ set ‘date’
$ echo $#
5 [встановлено 5 позиційних параметрів]
? – код повернення.
Код стану, що повертається shell командою, яка була виконана останньою. У загальному випадку при успішному виконанні команди повертається 0 .
$ echo $?
0
$_
$ - ідентифікаційний номер поточного процесу.
Виходячи з того, що номер будь-якого процеса унікальний, іноді його використовують як тимчасовий файл.
$ tempfile = fileSS [присвоює значення змінній tempfile]
$ sortfile –0 $tempfile [вивід змінної tempfile]
$ mv $ tempfile file1
! – ідентифікаційний номер фонового процесу, що викликано останнім
$ echo $!
243
$_
- стан прапорців інтерпретатора shell. Ця змінна визначає всі поточні прапорці інтерпритатора shell, які могло бути встановлено або скинути командою set.
$ echo $-
s
$
17. Керуючі структури у мові b-shell
Команди true, false.
$ true ; A=$ ? true
$ false ; B=$? False
$ echo $A $B
1
$_
Цикл типу while true (цикл до тих, доки )
While <список команд>
Do [команди виконаня
Done між do та done]
Команда while перевіряє код повернення списку команд, яким може бути як окрема команда так і група команд. Потім у залежності цього значення виконує відповідні дії.
While true
Do echo This is an ENDLESS loop
Done – ця команда створить вічний цикл, оскільки повернення команди true завжди нульове. Закінчити роботу можна тільки через DEL.
Цикл типу until (до):Дія виконується як і у попередньому прикладі, але за виключенням того, що умовою входу в середину є ненульове значення (false)
Until false
Do echo This is an ENDLESS loop
Done
Виконує те саме, що й попередньому випадку і як і у попередньому випадку тільки DEL зупинить виконання команди (вхід до циклу повинен бути ненульовим значенням).
17.1 Завдання директив інтерпретатору shell. Групування
$ (cd/user/james/men.spec; nohup nroff doc1:1pr &)
$_
еквівалент
$ cd/user/james/men.spec; nohup nroff doc1: 1pr &;cd
$_
Групування списку команд в середині фігурних дужок передписує shell читати і виконавати вкладені у дужках команди, які створюють об’днаний вивід. Цей метод дозволяє використовувати вивід декількох команд як вхід іншої команди:
$ {nroff -mm text1; nroff -mm text2;} col :1pr
формування та друк файлу.
17.2 Умовне виконання
Shell дозволяє викликати список команд у залежності від використання умов.
$ ls -1 ;who
Якщо об’єднати дві команди за допомогою оператора AND-IF(&&)f або оператора OR-IF (::), можна використовувати додаткові можливості shell.
OR-IF має вигляд
$ command1 :: command2
приклад
$ mkdir sample
$ rmkdir sample > /dev/null :: echo failure
$ rmkdir sample > /dev/null :: echo failure
failrue
$_
При виконанні другого рядка повідомлення не виводиться тому, що команда видалення каталогу завершується успішно. При виконанні третього рядка каталог вже був видалений тому команда rmdir sample завершується аварійно (не може бути виконана) і виконується echo failure.
$ command1 && command2
$_
Наприклад:
$ test -f .profile && cp.profile backup
$_
test -f .profile перевіряє, якщо файл .profile у поточному каталозі, якщо виконується цей командний рядок, знаходячись у начальному каталозі, у якому с файл .profile, shell створить копію цього файлу з ім’ям backup. Якщо викликається командний рядок з одного каталогів, де .profile – відсутнійб копія не буде створюватись.
$ THIS =145
$ THAT-abc
$ echo ${THIS + $THAT}
abc
$ echo $THIS
123
$_
