Реферат: Практическая работа по предмету UNIX
Если Вы все же ввели эту команду, то не удивляйтесь - система выдаст Вам следующее:
lp: -dpsdoc:No such file or directory
lp: -onobanner: No such file or directory
lp: myfile: No such file or directory
ведь команда lp в MINIX не имеет опций, а ее параметрами являются имена файлов.
1. Некоторые дополнительные приемы использования команд.
Оговорим также некоторые дополнительные приемы использования команд:
· Вы можете выполнять команду в фоновом режиме, т.е. UNIX будет продолжать выполнять эту команду, в то время как Вы печатаете другую. Очевидно, что использовать фоновый режим нужно в том случае, когда выполнение команды занимает много времени, в небольшой системе MINIX непросто найти такую команду. Поэтому на использовании фонового режима мы остановимся подробнее позже.
· Вы можете написать сразу несколько команд. Например,
cd /usr; ls; date
(каталог /usr станет текущим и на экран будет выведен список файлов и подкаталогов каталога /usr, а также информация о дате и времени) или
date; ls –la
(Вы увидите информацию о дате и времени и обо всех файлах и подкаталогах каталога /usr).
· Вы можете передать результат выполнения команды другим командным файлам или устройствам. Попробуйте вывести информацию о дате и времени не на экран, а в файл с названием vrem с помощью командной строки
cd; date > vrem
Проверьте результат выполнения команды, набрав
cat vrem
1. Если команда не выполняется.
Что делать в том случае, если Ваша команда не выполняется? Существует ряд причин, из-за которых это может произойти.
Если после ввода команды, Вы получили сообщение следующего вида:
<имя команды>: not found
то это означает, что команда не найдена.
Первое, что нужно сделать в такой ситуации – проверить, правильно ли Вы написали имя команды.
Если Вы убедились, что ввели команду правильно, но она все равно не находится, то, возможно, отсутствует доступ к этой команде. В этом случае стоит воспользоваться переменной PATH, т.к. может случиться, что каталог, в котором содержится Ваша команда, не включен в список каталогов, в которых UNIX ищет команду для запуска.
Для просмотра РАТН напечатайте:
echo $PATH.
Результат работы команды показывает, в каких каталогах производится поиск. (Для разделения каталогов в РАТН используется двоеточие.)
Если команда, которую Вы хотите выполнить, содержится в другом каталоге, тогда Вы должны добавить этот каталог в РАТН. Для этого нужно набрать РАТН= и перечислить через двоеточие все каталоги, в которых необходимо производить поиск. Давайте зададим такой путь поиска
РАТН=.:/usr/local/bin:/bin
Не забудьте нажать клавишу ENTER.
Попробуйте теперь ввести команду
ls
система ответит Вам
ls: not found
С другой стороны, Вы можете запустить команду, находящуюся в каталоге, которого нет в РАТН, напечатав полное имя, включая ее местонахождение. Например,
/usr/ bin/ls
или
/usr/ bin/ls /usr/ bin
Обратите внимание на то, что, во-первых, если команда находится в двух каталогах, и оба они указаны в РАТН, то UNIX запустит команду из каталога, который стоит первым по порядку в РАТН. (Например, если команда находится в Х и Y из РАТН = .:/X:/been:/Y, то запуск будет производиться из X); во-вторых, в отличие от DOS, UNIX не ищет команду в корневом каталоге автоматически.
Давайте все же восстановим путь поиска команд:
РАТН=.:/usr/local/bin:/bin:/usr/bin
Он позволяет осуществлять поиск в корневом каталоге и каталогах /usr/local/bin, /bin, /usr/bin. Проверьте выполняется ли теперь команда ls.
Еще одна причина невыполнения введенной команды – отсутствие прав на использование данной команды или некоторых ее опций, иначе говоря, прав доступа. В таком случае система Вам выдает сообщение о невозможности выполнить команду. Это могут быть следующие сообщения cannot execut (не может быть запущена), permission denied (обращение запрещено), no permission to … (нет доступа к …). Проверьте это, введя команду
date 000000
на экране появится строка
No permission to set time
(нет доступа к установке времени), т.к. правом использования этой команды обладает лишь root-пользватель.
Возможна и другая ситуация. Попробуйте ввести такую команду
cp /etc/mtab /etc/m1
она должна скопировать файл mtab каталога /etc в файл m1того же каталога, но Вы получите сообщение
cp: m1: Permission denied
(обращение запрещено). Дело в том, что Вы не имеете права копировать файлы в каталог /etc.
2. Использование простейших команд.
Теперь давайте попробуем выполнить несколько общедоступных безобидных команд – это должно придать Вам чувство уверенности при работе с командами UNIX.
Для начала попробуйте ввести команду uname, затем используйте опцию -а этой же команды.
В первом случае (после ввода команды uname) система выдает Вам информацию об имени системы. Когда же Вы вводите команду
uname -а
то на экране появляются следующие сведения: имя системы, сетевой адрес компьютера, версия системы, тип машины.
Хотите узнать, в какой день недели произошло Ледовое побоище или родились Ваши родители, а может Вам интересно как выглядел календарь первого месяца первого года нашей эры?
Воспользуйтесь командой cal (вывод календаря на экран). Задав в качестве параметров номер месяца и четырехзначный номер года (от 1 до 9999), Вы сможете увидеть на экране календарь этого месяца. Если номер месяца опустить, то UNIX выведет на экран календарь этого года. Так в какой день недели мы встретим 21 век? (Надеюсь, Вы не забыли, что команды и параметры разделяются пробелами.)
Если Вы забудете указать аргументы:
cal
то система напомнит Вам об этом, указав правильный формат команды
Usage: cal [mounth] year
(Употребление: cal [месяц] год).
Если Вы неправильно укажете параметр:
cal feb 1
то увидите на экране надпись Bad argument (неверный аргумент)
В заключение попробуйте вывести на экран большими буквами свое имя, либо что-нибудь другое, но столь же значимое. Для этого используйте команду banner и не забудьте оставить пробел перед текстом, предназначенным для вывода на экран
banner UNIX
Можно использовать кавычки. Командная строка должна выглядеть примерно так:
banner ’ UNIX’
Сравните результаты.
1. Как навести справку о команде.
В системах UNIX – сотни команд. Узнать, как работают все команды, возможно только в процессе кропотливой, долговременной работы в конкретной системе UNIX (не забывайте обо всем многообразии версий).
Однако, ознакомившись с наиболее важными командами, Вы сможете использовать для дальнейшего изучения системы такой мощный аппарат как справочная система UNIX.
Самая старая и все еще самая важная справочная информация находится в "man page". Man page (сокращение от manual page - страница руководства) содержит сведения обо всех командах и отдельных компонентах UNIX. Страницы справки хороши тем, что, во-первых, в них ясно показаны все опции данной команды, причем для каждой имеется отдельное описание; во-вторых, справочная система обновляется всякий раз, когда программисты изменяют команды UNIX.
Для вызова на экран справки о команде используют команду man. Имя команды или компоненты UNIX, о которой Вы хотите получить справку, печатается после man. Например, командная строка
man date
выводит на экран справку о команде date. Движение по тексту справки осуществляется с помощью клавиши ENTER и клавиш стрелка-вверх, стрелка-вниз. Для выхода из справки и возвращения в оболочку UNIX следует нажать клавишу Q.
Страница справки для команд имеет следующие разделы:
- NAME (имя) содержит имя команды и краткое описание.
- SYNOPSIS (конспект) показывает команду со всеми опциями и параметрами, которые Вы можете использовать.
- DESCRIPTION (описание) описывает, как используется команда, а также каждая опция этой команды.
- OPTIONS (опции) содержит имя опции и ее краткое описание.
- EXAMPLES (примеры) приводит примеры использования команды.
- SEE ALSO (смотрите также) содержит список связанных команд, если они есть.
Кроме справки для команд существует и другая справочная информация. Например, о форматах файлов, о функциях программирования, о системных командах (те команды, которые Вы уже знаете, являются пользовательскими командами общего назначения), об устройствах и т.д.
Вы, наверное, обратили внимание, что в верхних углах страницы-справки стоит имя компонента, о котором наводиться справка, а рядом в скобках – цифра (возможно, цифра и буква). Эта цифра показывает, что данный компонент принадлежит разделу с этим номером. А т.к. в каждом разделе справочной системы содержатся лишь компоненты одного типа, т.е. либо команды общего назначения (раздел 1), либо системные команды (раздел 1М), либо устройства (раздел 7) и т.д., то таким образом номер раздела указывает Вам, какое место занимает данный компонент в иерархии системы UNIX.
В системе MINIX разделы справки организованы следующим образом:
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9