- •1. Екскурс до історичного розвитку os Unix
- •1.1 Виникнення os Unix
- •2. Unix на платформі Intel
- •3.1 Спільні принципи інсталяції
- •4. Введення в архітектуру ядра os Linux.
- •5. Основні поняття
- •5.1 Початок роботи
- •5.2 Вхід до системи
- •5.3 Ввод команд
- •Janis tty03 Jan 17 08:12
- •5.4 Ввод командного рядка
- •5.5 Команди редагуванняя командного рядка
- •5.6 Керування процесом
- •5.7 Отримання списку процесів, що виконуються ps
- •5.8 Знищення процесу Del, Kill
- •5.9 Призупинка вводу на екран Ctrl-s
- •5.10 Використання калькуляторів
- •6. Початкове завантаження 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
- •Until false
- •17.1 Завдання директив інтерпретатору shell. Групування
- •17.2 Умовне виконання
- •17.3 Змінні інтерпретатора b-shell
- •2.1 Процедури інтерпритатора shell
- •17.3.2 Вкладені цикли
- •17.4 Керування перериваннями
- •17.5 Преревірка файлів, числових значень та ланцюжків символів
- •Wed Feb 15 21:49:20 1984
- •(Wed Feb 15 21:49:20 1984)
- •17.6 Зарезервовані змінні
17.5 Преревірка файлів, числових значень та ланцюжків символів
За допомогою команди test разом з командою while, if та until виконують перевірку файлів:
- r файл існує і його можна прочитати
-w файл існує і в нього можна записувати
test –f <filename> файл існує і не є каталогом
-d файл існує і є каталогом
-s розмір файла відрізняється від 0
test true false
$ cat copyall
num =0 [лічильник файлів, що не можуть читатися]
if test –d $HOME/$1 [перевірка на існування дом. каталогу]
then :
else mkdir $HOME/$1 [якщо каталог не існує, його потрібно створити в початковому каталозі]
fi
$ kill -9 283 ця команда не може бути перехоплена або ігнорована вказаним у команді процесом
$_
$ kill –9 – самовивід з системи, якщо статус не привелейований, то припиняється процес свого терміналу.
$_
Синтаксичні помилки будуть фіксуватися завжди, коли пропущений або недоступний оператор або операнд.
Якщо намагаються застосовувати арифметичну операцію до символу або ланцюжку символів
17.5.1Умовна заміна змінних. Значення змінної можна використати у виразі або замінити його на інший. Ця процедура має назву умовної заміни змінної. SHELL реалізує 4 варіанти умовної заміни за допомогою {-,+,?,=}
$ {VARIABLE-OTHER}
Якщо VARIABLE було присвоєно значення, використовується це значення ; в протилежному випадку використовують ланцюжок символів OTHER, а VARIABLE залишається без змін
$ echo $ {VAL -123}перевіряє чи встановлено VAL
123 так як VAL не встановлено, то ланцюжок має 123 символи
$SUB=456
$ echo ${VAL-$ SUB}
456
$ { VARIABLE =OTHER}
Якщо VARIABLE було присвоєно значення, воно використовується, в протилежному випадку перед використанням змінної VARIABLE присвоюється значення OTHER
$ echo ${VAL=xyz}
xyz
$ echo $ VAL
xyz
$ {VARIABLE ? EMPTY}
Якщо VARIABLE присвоєно значення, використовується це значення, в протилежному випадку на екран виводиться повідомлення, що значення VAL не присвоєно VARIABLE ? EMPTY, а процедура припиняється.
$ error=’variable unset, procedure is aborted’
$ echo $ {VAR ? $ error}
VAR : variable unset, procedure is aborted
$_
$ echo $ {VAR ?}
VAR : parameter not set
$ {VARIABLE + OTHER}
Якщо змінній присвоєно значення, використовується значення змінної OTHER. Якщо ж значення змінної VARIABLE не присвоєно за її значення використовується пустий ланцюжок символів, при цьому VARIABLE значення не присвоюються.
17.5.2 Позиційні параметри. Для ідентифікації позицій елементів або аргументів у командному рядку shell встановлює позиційні параметри. Shell ідентифікує елементи командного рядка за допомогою номерів починаючи з 0. Перший елемент завжди позначається як ;0 – ім’я процедури
$0 $1 $2…$9
$ diff file1 file2 …file9
Команда SET.
Присвоює значення позиційним параметрам.
$ set arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9
$ echo $1 $2 $3 $4 $5 $6 $7 $8 $9
arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9
$_
Якщо вказати команду:
$ set ‘date’
$_
Вихід команди date буде передавати свої значення як аргументи.
$ date