
- •Министерство образования и науки Украины
- •Практическое занятие №1
- •1.1. Сокращенная запись двоичных чисел в восьмеричной и шестнадцатеричной системах счисления
- •1.2. Преобразование восьмеричных и шестнадцатеричных чисел в двоичные
- •1.3. Преобразование двоичных, восьмеричных и шестнадцатеричных чисел в десятичные
- •1.4. Преобразование десятичных чисел в двоичные, восьмеричные и шестнадцатеричные
- •2. Упражнения
- •3. Содержание отчёта
- •Практическое занятие №2
- •1.1. Вход в систему
- •1.2. Редактирование командной строки
- •1.3. Память командных строк
- •1.4. Переключение виртуальных консолей
- •1.5. Изменение консольных шрифтов
- •1.6. Основные команды
- •Выполнение некоторых команд
- •2. Команда просмотра содержимого каталогов -ls (LiSt) – выдает на экран перечень файлов и каталогов (по умолчанию из текущего каталога).
- •Жесткая ссылка обозначает ся так же, как файл, на который она ссылается, счетчик ссылок при этом будет иметь значение больше 1.
- •3. Команда создание новых каталогов - mkdir.
- •5. Команда копирование файлов -cp (CoPy).
- •6. Команда перемещение файлов - mv (MoVe).
- •7. Команда удаление файлов - rm (ReMove).
- •8. Команды просмотра содержимого файлов more и cat.
- •Подстановочные символы
- •1.7. Выход из системы
- •2. Упражнения
- •Используя справочную информацию из п.1.6 Основные команды, изучите работу рассмотренных команд с различными параметрами и опциями:
- •1.2. Перенаправление ввода и вывода
- •1.3. Перенаправление с добавлением
- •1.4. Использование конвейера
- •2. Упражнения
- •3. Содержание отчёта
- •Справочная информация
- •Практическое занятие №4 Псевдонимы команд в ос qnx Цель – создание псевдонимов команд для облегчения работы в среде ос qnx
- •1. Краткие теоретические сведения
- •1.1. Управление связями файлов
- •1.2. Жесткие связи
- •1.3. Символические связи
- •1.4. Права доступа к файлам
- •1.5. Зависимости
- •1.6. Изменение прав доступа
- •2. Упражнения
- •3. Содержание отчёта
- •1.2. Сравнение файлов (команда diff)
- •1.3. Подсчет числа слов, строк и байт в файле (команда wc)
- •1.4. Потоковый редактор sed
- •2. Упражнения
- •/Usr/bin/grep
- •/Usr/xpg4/bin/grep
- •/Usr/xpg4/bin/grep
- •Операнды
- •/Usr/bin/grep
- •/Usr/xpg4/bin/grep
- •Использование
- •Работа с большими файлами
- •/Usr/bin/who
- •/Usr/xpg4/bin/who
- •Операнды
- •1.1. Ввод текста
- •1.2. Редактирование текста
- •1.3. Сохранение файлов и выход из VI
- •1.4. Редактирование еще одного файла
- •1.5. Включение других файлов
- •1.6. Выполнение команд Shell
- •2. Упражнения
- •3. Содержание отчёта
- •Практическое занятие №7 Работа с текстовыми файлами Цель – знакомство с командами, работающими с текстовыми файлами (awk-интерпретатор скриптовый)
- •1. Краткие теоретические сведения
- •1.1. Язык awk
- •1.2. Регулярные выражения
- •Метасимволы, используемые в регулярных выражениях
- •1.3. Действия
- •1.4. Awk-переменные и выражения
- •1.5. Использование операций
- •1.6. Использование массивов
- •1.7. Селекторы
- •1.8. Использование операторов
- •1.9. Ввод и вывод данных
- •1.10. Встроенные функции
- •2. Упражнения
- •Структура файла query1
- •Структура файла query2
- •3. Содержание отчёта
- •1.2. Граматика языка shell
- •2. Упражнения
- •3. Содержание отчёта
- •Выполнить:
- •2. Упражнения
- •Примечание:
- •3. Содержание отчёта
- •1.1. Компоновка объектных модулей
- •1.2. Отладка
- •2. Упражнения
- •Задание №1
- •Задание №2
- •Задание №3
- •Задание №4
- •Задание №5
- •Задание №6
- •Задание №13
- •Задание №14
- •Задание №15
- •Задание №16
- •Задание №17
- •Практическое занятие №11
- •2. Упражнения
- •3. Содержание отчёта
- •1.2. Создание каталога
- •1.3. Биты режима для прав доступа
- •1.4. Удаление каталога
- •1.5. Создание жесткой связи
- •1.6. Создание символической связи
- •1.7. Чтение символической связи
- •1.8. Переименование файла
- •1.9. Удаление файла
- •1.10. Обработка ошибок
- •2. Упражнения
- •3. Содержание отчёта
- •1.2. Проверка возможностей управления работой и процессами в shell
- •2. Упражнения
- •3. Содержание отчёта
- •1.3. Ошибки, связанные с именами файлов
- •1.4. Доступ к файлу
- •2. Упражнения
- •3. Содержание отчёта
- •Практическое занятие №15 Организация процессов вQnx
- •1. Методические указания по выполнению практической работы
- •1.1. Файл main.O
- •1.2. Файл input.C
- •1.3. Файл output.C
- •1.4. Файл process.C
- •1.5. Используемые функции
- •1.6. Получение информации о процессах
- •2. Упражнения
- •1.2. Клиент
- •1.3. Определение идентификаторов узла, процесса и канала (nd/pid/chid) нужного сервера
- •1.4. Применение обмена сообщениями
- •2. Упражнения
- •3. Содержание отчёта
- •Практическое занятие №17 Организация потоков в qnx
- •1. Краткие теоретические сведения
- •1.1. Запуск потока
- •1.2. Администрирование атрибутов потока
- •Текст программы
- •Результаты
- •1.2. Текст программы
- •1.3. Последовательность действий
- •1.4. Результаты
- •2. Упражнения
- •3. Содержание отчёта
/Usr/bin/who
-T |
То же, что и опция -s, но выдаются также поля состояние, ожидание, pid и комментарий. В поле состояние выдается один из следующих символов: + Терминал разрешает запись другим пользователям.
- Терминал не разрешает запись другим пользователям.
? Возможность записи на терминал не может быть определена.
|
/Usr/xpg4/bin/who
-T |
То же, что и опция -s, но выдается поле состояние. В поле состояние выдается один из символов, перечисленных в описании этой опции для версии /usr/bin/who. Если вместе с -T используется опция -u, в конце строки добавляется столбец времени ожидания. |
-t |
Показывает последнее изменение системных часов (с помощью утилиты date), выполненное пользователем root. См. su(1M) и date(1). |
-u |
Выдает информацию только о зарегистрированных сейчас пользователях. В поле имя выдается регистрационное имя пользователя. В поле терминал, - имя специального файла терминала из каталога /dev. В поле время выдается время, когда пользователь зарегистрировался. В поле ожидание указано, сколько часов и минут назад было выполнено последнее действие с этого терминала. Точка (.) показывает, что терминал был активен за последнюю минуту, и поэтому является "текущим". Если терминал не использовался более 24 часов или с момента загрузки, в этом поле выдается значение old. Поле ожидания позволяет определить, работат ли кто-то за теминалом или нет. Поле pid - идентификатор процесса начального командного интерпретатора пользователя. В полне комментарий выдается комментарий для соответствующей терминалу строки в файле /sbin/inittab (см. inittab(4)). Он может содержать информацию о метонахождении терминала, номер телефона владельца, тип терминала и т.п. |
Операнды
Поддерживаются следующие операнды:
am i am I
В локали "C" ограничивает результат, выдавая информацию только о вызывающем пользователе, аналогично опции -m. Слова am и i или I должны быть отдельными аргументами.
файл
Задает полное имя файла, используемого вместо стандартного, в качестве базы данных зарегистрированных пользователей.
ПЕРЕМЕННЫЕ СРЕДЫ
Описание следующих переменных среды: LC_CTYPE, LC_MESSAGES, LC_TIME и NLSPATH, влияющих на работу команды who, см. на странице справочного руководства environ(5).
СТАТУС ВЫХОДА
Команда завершается со следующими статусами выхода:
0 |
Успешное выполнение. |
>0 |
Произошла ошибка. |
ФАЙЛЫ
/sbin/inittab
сценарий для процесса init
/var/adm/utmp
информация о текущих пользователях и времени их работы
/var/adm/wtmp
историческая информация о пользователях и времени их работы
АТРИБУТЫ
Описание следующих атрибутов см. на странице справочного руководства attributes(5):
/usr/bin/who
ТИП АТРИБУТА |
ЗНАЧЕНИЕ АТРИБУТА |
Доступен в пакете |
SUNWcsu |
/usr/xpg4/bin/who
ТИП АТРИБУТА |
ЗНАЧЕНИЕ АТРИБУТА |
Доступен в пакете |
SUNWxcu4 |
ССЫЛКИ
date(1), login(1), mesg(1), init(1M), su(1M), wait(3UCB), inittab(4), utmp(4), attributes(5), environ(5), XPG4(5)
ПРИМЕЧАНИЯ
Суперпользователь: после перевода системы в однопользовательский режим команда who ничего не выдает; поскольку файл /var/adm/utmp изменяется при регистрации, а регистрация в однопользовательском режиме не выполняется, команда who не может точно проинформировать об этом состоянии. Команда who am i, однако, выдает правильную информацию.
ПРАКТИЧЕСКОЕ ЗАНЯТИЕ №6
Изучение текстовых редакторов ОС QNX
Цель – освоение приёмов работы в среде редактора vi
1. Краткие теоретические сведения
В процессе работы в системе вам необходимо будет создавать и редактировать текстовые файлы. Все эти действия можно выполнить с помощью экранного текстового редактора vi. Текстовый редактор – это программа, используемая для редактирования файлов, которые содержат текст, например письма, С-программы или системные конфигурационные файлы. Хотя в QNX много всяких разных редакторов, единственный редактор, который вы с гарантией найдете в любом QNX - это vi (``visual editor''). vi - это не самый простой в использовании редактор. Но поскольку он так распространен в мире UNIX и в любой момент может вам потребоваться.
Запуск редактора осуществляется вводом из командной строки имени программы vi или vi <filename>,
где <filename> - имя редактируемого файла.
При запуске vi можно указать следующие параметры:
vi |
Редактирует временный файл, которому при сохранении текста необходимо дать имя. |
vi +45 file |
Переходит на строку с номером 45. |
vi +/word file |
Ищет первое вхождение слова 'word' |
$vi -c cmd |
Выполняет команду cmd немедленно после начала сеанса редактирования. |
$vi -r |
Восстанавливает указанные файлы, если пpоизошел аваpийный выход из pедактоpа или внезапное завеpшение системы. Если файлы не опpеделены, вывести список файлов, котоpые могут быть восстановлены. |
Для начала попробуем создать новый файл, например 'testvi':
$ vi testvi
Появится пустой экран с курсором в первой строке. Остальные строки (также пустые) будут начинаться с символа '~' (тильда). Столбец символов ``~'' говорит о том, что вы стоите на конце файла. В самой последней строке будет сообщение примерно такого содержания:
testvi: new file: line 1.
В дальнейшем эта строка будет также использоваться и для ввода команд.
При использовании vi в любое время вы можете находиться в одном из трех режимов работы. Эти режимы известны как командный режим, режим вставки и режим последней строки. Когда вы начинаете работать с vi - вы в командном режиме. Этот режим позволяет использовать определенные команды для редактирования файлов или перехода в другие режимы. Например, напечатав ``x'' при нахождении в командном режиме, удаляете символ, находящийся перед курсором. Стрелки передвигают курсор по редактируемому файлу. Большинство команд, используемых в командном режиме, состоит из одного или двух символов, которые выполняют простые функции редактирования.