отладке курсов обучения.
В настоящее время доступны следующие "курсы":
keyboard
работа с функциональной клавиатурой;
files основные команды ОС ДЕМОС;
morefiles
продолжение изучения команд ОС ДЕМОС;
C программирование на языке Си.
15
AПK.00210-01 33 01-5
Специальная команда "пока" завершает сеанс связи с
learn.
Ключ "-справочник" позволяет работать с курсами обуче-
ния, размещенными не в стандартном справочнике системы
learn.
ФАЙЛЫ:
/mnt/learn
ЗАМЕЧАНИЯ:
Основной эффект команды learn, заключается в том, чтo
oбyчeниe пpoвoдитcя нa мoдeли OC,нa тoй ee вepcии,
кoтopaя ceйчac установлена на ЭВМ. Во время первого
сеанса очень полезно, ocoбeннo для нeпpoгpaммиcтoв,
ecли pядoм бyдeт нaxoдитьcя специалист по системе.
При составлении некоторых уроков могли быть допущены
ошибки, иногда компонента в конкретной версии ОС рабо-
тает по-другому; такие уроки могут быть пропущены,
хотя требуется определенный навык для того, чтобы от-
личить допущенную обучаемым ошибку от "разночтения"
компонент.
16
AПK.00210-01 33 01-5
ИМЯ:
lex - генератор программ лексического анализа.
ФОРМАТ:
lex [-tvfn] [файл]...
ОПИСАНИЕ:
Команда lex генерирует программы, которые могут ис-
пользоваться для простого лексического анализа текста.
Входные файлы (по умолчанию - стандартный ввод) содер-
жат регулярные выражения, которые должны отыскиваться,
и действия, записанные на языке Си, которые должны вы-
полняться при нахождении этих выражений.
Генерируется исходная программа "lex.yy.с" на языке
Си, которая должна компилироваться следующим образом:
cc lex.yy.c -ll
При работе этой программы производится копирование не-
распознанных порций входных данных на выход, а также
выполнение соответствующих действий, описанных на язы-
ке Си, для каждого регулярного выражения, которое было
распознано.
Приведенная ниже программа на языке lex выполняет пре-
образование из верхнего регистра в нижний, удаляет
пробелы в конце строк и заменяет несколько пробелов на
один:
%%
17
AПK.00210-01 33 01-5
[A-Z] putchar(yytext[0]+'a'-'A');
[ ]+$
[ ]+ putchar(' ');
Команда имеют следующие параметры:
-t поместить результат в стандартный файл вывода, а
не в файл lex.yy.с;
-v выдать размеры внутренних таблиц;
-n не выдавать размеры таблиц (устанавливается по
умолчанию);
-f "быстрая" компиляция, не проводится упаковка ре-
зультирующих таблиц. Годится только для малых
программ.
-d включение отладочного режима компилятора (ключ
может задаваться только при использовании диаг-
ностического варианта lex).
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
yacc
18
AПK.00210-01 33 01-5
ИМЯ:
ln - создание альтернативных имен.
ФОРМАТ:
ln имя1 [имя2] ...[имя n] [d2]
ОПИСАНИЕ:
Один и тот же файл (вместе со своим размером, информа-
цией, относящейся к защите, и т.д.) может иметь нес-
колько альтернативных имен. Не существует способа от-
личить альтернативное имя данного файла от его исход-
ного имени, любые изменения в файле выполняются неза-
висимо от имени, под которым известен этот файл.
Koмaндa ln coздaeт для кaждoгo yкaзaннoгo фaйлa "имя
1",...,"имя н" aльтepнaтивнoe имя в cyщecтвyющeм
cпpaвoчникe "d2". Ecли в кaчecтвe аргументов команды
заданы "имя 1" и "имя 2", то для существующего файла
"имя 1" coздaeтcя aльтepнaтивнoe имя "имя 2" в тeкyщeм
кaтaлoгe.
ЗАМЕЧАНИЯ:
Создавать альтернативные имена справочников, или по-
мещать имена файлов в разных файловых системах запре-
щается.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
rm
19
AПK.00210-01 33 01-5
ИМЯ:
lock - блокировать терминал.
ФОРМАТ:
lock
ОПИСАНИЕ:
Команда lock запрашивает у пользователя пароль, затем
печатает на терминале "Again" и блокирует этот терми-
нал до тех пор, пока пароль не будет указан повторно.
Если пользователь забудет пароль, у него нет другой
возможности, кроме как зарегистрироваться где-то в
другом месте и завершить блокирующий процесс.
20
AПK.00210-01 33 01-5
ИМЯ:
logoff - выход из системы ДЕМОС.
ФОРМАТ:
logoff
ОПИСАНИЕ:
Команда logoff предназначена для выхода пользователя
из системы ДЕМОС. Выход из системы по команде logoff
происходит из любого уровня файловой системы ДЕМОС.
Признаком выхода из системы ДЕМОС служит изображение
на экране дисплея "заставки" с идентификацией СВМ ЕС.
21
AПK.00210-01 33 01-5
ИМЯ:
look - поиск строк в отсортированном списке.
ФОРМАТ:
look [-df] строка [файл]
ОПИСАНИЕ:
Команда look просматривает отсортированный "файл" и
печатает все строки, начинающиеся символами "строка".
Используется двоичный поиск. Опции "d" и "f" влияют на
сравнение, как и в sort:
d "словарный" порядок: только буквы, цифры, симво-
лы табуляции и пробелы участвуют в сравнении;
f Игнорируется регистр символов. Большие буквы
считаются при сравнении равными малым.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
sort, grep
22
AПK.00210-01 33 01-5
ИМЯ:
lorder - определить связи об'ектных файлов.
ФОРМАТ:
lorder файл ...
ОПИСАНИЕ:
Входная информация представляет собой один или нес-
колько об'ектных библиотечных или архивных файлов. В
результате работы получается список пар имен об'ектных
файлов. Первый файл пары ссылается на внешний иденти-
фикатор, определенный во втором. Выход может быть об-
работан командой tsort для нахождения такого порядка
размещения модулей в библиотеке, который обеспечивает
однопроходный поиск для ld.
Следующая строка предназначена для построения новой
библиотеки из существующих файлов ".o":
ar cr library `lorder *.o | tsort`
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
tsort, ld, ar
ЗАМЕЧАНИЯ:
имена об'ектных файлов как внутри, так и вне библи-
отек, должны иметь окончание ".o" - в противном случае
результат будет бессмысленным.
23
AПK.00210-01 33 01-5
ИМЯ:
lpq - выдaть cocтoяниe oчepeди к AЦПУ.
ФОРМАТ:
lpq
ОПИСАНИЕ:
Команда lpq выдает соотояние очереди файлов, ожидающих
вывода на АЦПУ. Каждый элемент очереди выдается, с
указанием имени данного файла, размера файла в симво-
лах, владельца и идентификационного номера. Идентифи-
катор полезен для удаления заданного входа из очереди
с помощью команды lprm.
ФАЙЛЫ:
/usr/spool/lpd/*
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpr, lprm
24
AПK.00210-01 33 01-5
ИМЯ:
lpr - постановка файла в очередь на печать.
ФОРМАТ:
lpr [-m] [-c] [-r] [-b заголовок] [имя...]
ОПИСАНИЕ:
Команда lpr вызывает занесение указанных файлов в оче-
редь на печать. Если файлы не указаны, считывается
стандартный файл ввода.
Ключи определяют следующие режимы выполнения команды:
-m после завершения печати файла пользователю посы-
лается сообщение с помощью mail;
-c по умолчанию, файлы, которые требуется выдать на
АЦПУ, копируются в справочник /tmp/spool/lpd - в
этом режиме в /tmp/spool/lpd появляется только
ссылка на файл и копирования не происходит;
-r после завершения печати указанные файлы удаляют-
ся;
-b По умолчанию, перед каждым файлом печатается за-
головок, который содержит имя пользователя, за-
пустившего данную команду и время выдачи. В этом
режиме заголовок дополняется словом, определен-
ным в параметре "заголовок", которое печатается
большими буквами в середине листа. Печатается не
более 14 символов "заголовка".
25
AПK.00210-01 33 01-5
ФАЙЛЫ:
/usr/spool/lpd/*
/usr/lib/lpd "демон" печати
/usr/lib/lpf фильтр для обработки
заголовков и подчеркиваний
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpq, lprm
ЗАМЕЧАНИЯ:
В режиме -c, при невожможности завести ссылку (исход-
ный файл находится в другой файловой системе), файл
все-таки копируется.
В данной версии не реализовано повторение печати файла
при сбое АЦПУ.
26
AПK.00210-01 33 01-5
ИМЯ:
lprm - удалить файл из очереди к АЦПУ.
ФОРМАТ:
lprm [идентификатор...] [имя-файла...] [владельца...]
ОПИСАНИЕ:
Команда lprm удаляет файл из очереди к АЦПУ. Идeнти-
фикaтop, имя-фaйлa или влaдeльцa кoнкpeтнoгo фaйлa из
oчepeди можно узнать с помощью команды lpq. Все файлы,
удовлетворяющие заданному условию, будут удалены.
Выдается идентификатор каждого удаленного из очереди
файла.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpr, lpq
ФАЙЛЫ
/usr/spool/lpd/*
27
AПK.00210-01 33 01-5
ИМЯ:
ls - выдать содержимое справочника.
ФОРМАТ:
ls [-1ACFRabcdfgilmnqrstux] имя ... l [ключи ls] имя
...
ОПИСАНИЕ:
Для каждого параметра, являющегося именем справочника,
команда ls выдает список входящих в него файлов и
справочников. Для каждого параметра, являющегося
файлом, команда ls повторяет его имя и сообщает всю
остальную затребованную информацию. По умолчанию вы-
ходная информация сортируется в алфавитном порядке.
Если параметры не указаны, выдается содержимое текуще-
го справочника.
Имеется три возможных формата выдачи. Выбираемый
формат зависит от того, направляется ли вывод на тер-
минал, а также может управляться с помощью ключей.
Стандартным форматом для выдачи на терминал является
вывод в несколько столбцов .Если вывод производится не
на терминал, по умолчанию выдается по одному имени в
строке. Кроме того, с помощью ключа "-m", может зада-
ваться формат, в котором имена файлов выдаются поперек
страницы, разделяясь символами ",". При вызове "l" ,
по умолчанию подразумевается ключ "-m".
Файлы, которые рассматриваются не как содержимое спра-
вочника, всегда сортируются поперек страницы, а не в
28
AПK.00210-01 33 01-5
столбцах таблицы сверху вниз. Это связано с тем, что
имена отдельных файлов могут иметь произвольную длину.
Имеется несколько ключей:
-l Выдавать "в длинном формате", указывая для каж-
дого файла его режим, число связей, владельца,
размер в байтах и время последней модификации.
Если файл является специальным файлом, поле раз-
мера будет содержать основной и дополнительный
номера устройства;
-t Отсортировать в соответствии со временем модифи-
кации (вначале с более поздним временем модифи-
кации) вместо обычной сортировки по именам;
-a Выдавать все имена (обычно имена файлов начина-
ющиеся с точки "." не выдаются);
-s Указать размер для каждого имени в блоках, вклю-
чая блоки косвенной адресации;
-d Если параметр является именем справочника, выда-
вать только его имя, а не содержимое (использу-
ется главным образом с "-l" для получения состо-
яния справочника);
-r Изменить порядок сортировки на противоположный,
чтобы получить файлы в обратном алфавитном по-
рядке или вначале более старые файлы;
-u Использовать время последнего доступа вместо
29
AПK.00210-01 33 01-5
времени последней модификации при сортировке
(-t) или распечатке (-l);
-i Указать в первой позиции сообщения для каждого
перечисляемого файла i-номер;
-f Приводит к тому, что каждый параметр интерпрети-
руется как имя справочника, и распечатывается
имя, находящееся в каждой позиции. Этот ключ
отключает ключи "-l", "-t", "-s" и "-r", и вклю-
чает ключ "-a"; порядок такой, в котором имена
находятся в справочнике;
-g Указать идентификатор группы вместо идентифика-
тора владельца при подробной выдаче ("-l");
-m Используется потоковый выходной формат;
-1 Используется формат с одним именем в строке,
например, при выводе на терминал;
-c Используется вывод в несколько столбцов, напри-
мер, при выводе в файл или в поток (pipe);
-q Вызывает печать символа "?" вместо неизобража-
емых символов в именах файлов; это обычно произ-
водится, если выходным устройством является тер-
минал;
-x Вызывает сортировку состоящей из нескольких
столбцов выдачи поперек страницы, а не сверху
вниз; такой формат является стандартным, если
30
AПK.00210-01 33 01-5
последним символом имени, с которым была вызвана
программа, является "x";
-A Bыдaютcя вce имeнa тeкyшeгo кaтaлoгa (aнaлoгичнo
"-a") кроме '.' и '..' ;
-F К именам справочников при выдаче добавляется
символ "/"; имена исполняемых файлов дополняются
символом "*";
-R Рекурсивная выдача содержимого всех встречающих-
ся справочников.
Статус файла, выдаваемый при указании ключа "-l", сос-
тоит из 11 символов, которые интерпретируются следу-
ющим образом. Первым символом является:
d Если данный файл является справочником;
b Если данный файл является специальным файлом
блочного типа;
c Если данный файл является специальным файлом
символьного типа;
- Если данный файл является простым файлом.
Следующие 9 символов интерпретируются как три набора
по три символа в каждом. Первый набор указывает полно-
мочия владельца, следующий - полномочия других пользо-
вателей той же группы, и последний - полномочия всех
прочих пользователей. В каждом таком наборе три симво-
31
AПK.00210-01 33 01-5
ла указывают полномочия соответственно для чтения, за-
писи и выполнения данного файла как программы. Для
справочника полномочие "выполнение" интерпретируется
как разрешение поиска в каталоге заданного файла. Пол-
номочия задаются следующим образом:
r если файл доступен для чтения;
w если файл доступен для записи;
x если файл доступен для выполнения;
- если указанный вид доступа не разрешается.
Символ полномочия для выполнения группой указывается
как "s", если этот файл имеет режим установки иденти-
фикации группы; аналогично, символ полномочия для вы-
полнения пользователем указывается как "s", если файл
имеет режим установки идентификации пользователя.
Последним символом режима (обычно "x" или "-") являет-
ся "t", если установлен бит режима 1000.
Когда распечатываются размеры файлов в справочнике,
выдается общее количество блоков, включая блоки кос-
венной адресации.
ЗАМЕЧАНИЯ:
Символы табуляции и новой строки в именах файлов
рассматриваются как печатаемые символы.
Предполагается, длина строки устройства вывода равна
32
AПK.00210-01 33 01-5
80 позициям. Ширина столбцов составляет обычно 15 сим-
волов. Если заданы ключи "-i" или "-s", ширина состав-
ляет 20 символов. Если одновременно заданы ключи "-i"
и "-s", ширина составляет 25 символов. В любом слу-
чае, если задан ключ "-l" или "-n", предполагается,
что в строке помещается информация только об одном
имени.
Установка ключей в зависимости от того, является ли
выводное устройство терминалом, нежелательна, так как
ls -s ! lpr
значительно отличается от
ls -s
Выбор ширины столбцов является весьма ограниченным для
терминалов, которые могут выполнять табуляцию.
33
AПK.00210-01 33 01-5
ИМЯ:
m4 - макропроцессор.
ФОРМАТ:
m4 [файл ...]
ОПИСАНИЕ:
Макропроцессор m4 предназначен для использования в ка-
честве препроцессора языков ФОРТРАН, Си и других.Каж-
дый из файлов, указанных в параметрах, обрабатывается
по очереди. Если параметры отсутствуют или параметром
является "-", считывается стандартный файл ввода.
Обработанный текст записывается в стандартный файл вы-
вода.
Формат макровызова:
имя(пар1,пар2,...,парN)
Символ "(" должен следовать непосредственно после име-
ни макроопределения. Если символ "(" отсутствует после
имени, считается, что макро не имеет параметров. При
перечислении параметров начальные пробелы, символы та-
буляции и новой строки, не заключенные в кавычки, иг-
норируются. Имена макроопределений могут состоять из
букв, цифр и символов подчеркивания "_", причем первым
символом не должна быть цифра.
Можно отказаться от немедленной подстановки значения
макроимени. Для этой цели соответствующие последова-
тельности символов заключаются в апострофы (`'). При
34
AПK.00210-01 33 01-5
каждом просмотре макропроцессора один уровень апостро-
фов удаляется.
Когда обнаруживается имя макроопределения, его пара-
метры последовательно обрабатываются. Вычисление мак-
роопределений обычно продолжается при просмотре пара-
метров, и любые запятые или правые скобки, которые
могут появиться в значении вложенного вызова, имеют
такое же действие, как и исходный текст. После подста-
новки значение макро помещается обратно во входной
поток и просматривается повторно.
Возможно задание своих макро с совпадающими именами,
однако после этого их начальный смысл теряется. Как
правило встроенные макро выдают значение "пусто" (если
в описании не сказано иначе). Краткое описание встро-
енных макроопределений м4, которые представляют собой
входной язык макропроцессора:
define(имя,значение)
Второй параметр устанавливается в качестве зна-
чения макроимени, указаного в первом параметре.
Каждое употребление $n в замещающем тексте, где
n - цифра, заменяется на n-ый параметр. Параметр
0 представляет собой имя макро. Отсутствующие
параметры заменяются пустыми строками;
undefine(`имя')
Удаляет определение макро, указанного в парамет-
ре;
35
AПK.00210-01 33 01-5
ifdef(`имя',парам2,парам3)
Если первый параметр определен, значением явля-
ется второй параметр, если нет - третий. Если
третий параметр отсутствует, значением является
пусто;
changequote(l,r)
Заменяет символы экранирования (апострофы) на
первый и второй параметры. Вызов changequote без
параметров восстанавливает исходные значения
(т.е. `');
divert(n)
Макропроцессор обслуживает до 10 выводных
файлов, пронумерованных от 0 до 9. Конечный
вывод представляет собой конкатенацию этих
файлов в порядке их номеров. По умолчанию инфор-
мация выдается в стандартный файл вывода (файл с
номером 0). Макро divert заменяет текущий выход-
ной файл на указанный в параметре (цифровая
строка). Вывод, который направляется в файл но-
мером, не входящим в диапазон 0-9, отбрасывает-
ся;
undivert(n1,n2 ...)
Вызывает немедленный вывод текста из всех ука-
занных файлов (или из всех файлов, если парамет-
ры отсутствуют). Текст может быть выведен в дру-
гой файл. При выводе информация в файле уничто-
36
AПK.00210-01 33 01-5
жается;
divnum
Возвращает значение текущего выходного файла;
dln Считывает и отбрасывает символы до следующего
символа новой строки включительно;
ifelse(a,b,c,d)
Имеет три или более параметров. Если первый па-
раметр совпадает со вторым, третий параметр ис-
пользуется в качестве значения. Если это не так
и если имеется более четырех параметров, данный
процесс повторяется для параметров 4, 5, 6 и 7.
В противном случае значением является либо чет-
вертая строка, либо, если она отсутствует -
пусто;
incr(число)
Возвращает значение своего параметра, увеличен-
ное на 1. Исходная строка цифр рассматривается
как десятичное число;
eval(выражение)
Выдает значение указанного выражения. При вычис-
лении используется 32-разрядная целая арифмети-
ка. Операции включают в себя +, -, *, /, %, ^
(возведение в степень), отношения, скобки;
len(строка)
Возвращает количество символов в "строке";
37
AПK.00210-01 33 01-5
index(строка_1,строка_2)
Возвращает номер символа "строки_1" с которого
начинается вхождение "строки_2". Счет символов
начинается с нуля. Если в "строке_1" вхождений
"строки_2" не обнаруженно, возвращается -1;
substr(s,i,n)
Возвращает подстроку строки "s", начинающуюся с
i-той позиции, длиной в "n" символов. Счет сим-
волов начинается с нуля. Если третий параметр
отсутствует, считается, что подстрока продолжа-
ется до конца строки "s";
translit(s,f,t)
Перекодирует строку "s", заменяя символы, входя-
щие в строку "f", соответствующими символами
строки "t";
include(имя)
Заменяется на содержимое файла с указанным "име-
нем";
sinclude(имя)
Аналогично include, за исключением того, что ес-
ли файл недоступен, диагностика не выдается и
процесс работы макропроцессора не прерывается;
syscmd(команда)
Выполняет указанную "команду" системы. Значение
не возвращается;
38
AПK.00210-01 33 01-5
maketemp(...XXX...)
Заменяет символы XXX идентификатором текущего
процесса;
errprint(строка_1,строка_2,...)
Выдает указанные строки в стандартный файл диаг-
ностических сообщений;
dumpdef(имя_1,имя_2...)
Выдает текущие имена и определения для указанных
параметров (или все, если параметры отсутству-
ют);
39
AПK.00210-01 33 01-5
ИМЯ:
mail - почтoвая служба.
ФОРМАТ:
mail [+] [-i] [адресат]...
mail [+] [-i] -f файл
ОПИСАНИЕ:
команда mail предназначена для реализации обмена сооб-
щениями между пользователями посредством аппарата
"почтовых ящиков". Почтовым ящиком пользователя, обыч-
но является файл в справочнике /usr/spool/mail с име-
нем аналогичным имени пользователя, под которым тот
зарегистрирован в системе. Применяя команду mail,
пользователь получает возможность просмотреть
собственный "почтовый ящик" или дополнить чужой своим
сообщением. Если в команде не указан "адресат", выда-
ется почта пользователя, сообщение за сообщением, в
порядке "последним пришел - первым вышел". Когда пере-
числены "адресаты", mail считывает стандартный ввод до
конца файла или строки, содержащей лишь ".", и добав-
ляет его к "почтовому ящику" каждого "адресата". В на-
чале сообщения указывается имя отправителя, дата
отправления и "почтовый штемпель". В качестве "почто-
вого штемпеля" используются строки, начинающиеся сим-
волом ">". Обычно, "адресат" - имя пользователя, под
которым тот зарегистрирован в системе, если необходимо
отправить сообщение пользователю находящемуся в другой
системе (на другой машине), то перед параметром "адре-
40
AПK.00210-01 33 01-5
сат" следует указать "!имя_системы" .
Ключи задают следующие режимы работы команды:
+ изменить порядок просмотра сообщений на режим
"первым пришел - первым вышел";
-i игнорировать прерывания;
-f использовать следующий за ним параметр в ка-
честве имени файла, альтернативного "почтовому
ящику".
Во время просмотра "почтового ящика", после печати
очередного сообщения программа выдает на терминал знак
вопроса "?" и ожидает команду. Допустимы следующие от-
веты:
<return>
перейти к следующему сообщению без изменения со-
держимого почтового ящика;
d удалить сообщение и перейти к следующему;
p повторно напечатать текущее сообщение;
- вернуться к предыдущему сообщению;
s[файл]...
сохранить сообщение в файлах с указанными имена-
ми (по умолчанию, используется файл mbox в рабо-
чем справочнике пользователя);
41
AПK.00210-01 33 01-5
w[файл]...
сохранить сообщение без заголовка в файлах с
указанными именами (по умолчанию - mbox);
m[пользователь]...
направить сообщение перечисленным пользователям
(по умолчанию - себе);
EOT (<конец передачи> - <cntrl-D>)
поместить непросмотренную почту обратно в почто-
вый ящик и завершить просмотр;
q то же, что и EOT;
!команда
вызвать интерпретатор команд SHELL и выполнить
указанную команду.
Любой другой ответ приведет к выдаче приведенного выше
списка команд. Сообщение о наличии почты выдается при
регистрации.
ФАЙЛЫ:
/etc/passwd сведения о пользователях сис-
темы
/usr/spool/mail/* "почтовые ящики"
mbox сохраненная почта
/tmp/ma* временные файлы
dead.letter не отправленный по почте текст
42
AПK.00210-01 33 01-5
pif -mes [a-i]*.1 > ai1.f mx
-ES -P ant.ai ai1.f > ai1.fcps
pif -mes [j-z]*.1 > jz1.f mx
-ES -P ant.jz jz1.f > jz1.fcps
rm *.f
43
AПK.00210-01 33 01-5
ИМЯ:
make - программа сборки компонент.
ФОРМАТ:
make [-f командный_файл] [ключ] ... Файл ...
ОПИСАНИЕ:
Команда make выполняет сборку компонент из набора ис-
ходных файлов. Результатом работы make может являться
готовая программа, получаемая из множества файлов, от-
чет или статья, создаваемая с помощью системы подго-
товки документации, библиотека функций и т.п.
Для использования make, разрабатывается специальная
программа сборки, под управлением которой выполняются
все необходимые действия для получения требуемого ре-
зультата. Программа сборки (командный файл make) со-
держит информацию о порождаемых об'ектах, дерево зави-
симостей, описывающее из каких файлов получается
об'ект, и команды языка SHELL для создания об'ектов.
Имя командного файла указывается после ключа "-f", ес-
ли вместо параметра "командный_файл" указан "-", ис-
В настоящее время доступны следующие "курсы":
keyboard
работа с функциональной клавиатурой;
files основные команды ОС ДЕМОС;
morefiles
продолжение изучения команд ОС ДЕМОС;
C программирование на языке Си.
15
AПK.00210-01 33 01-5
Специальная команда "пока" завершает сеанс связи с
learn.
Ключ "-справочник" позволяет работать с курсами обуче-
ния, размещенными не в стандартном справочнике системы
learn.
ФАЙЛЫ:
/mnt/learn
ЗАМЕЧАНИЯ:
Основной эффект команды learn, заключается в том, чтo
oбyчeниe пpoвoдитcя нa мoдeли OC,нa тoй ee вepcии,
кoтopaя ceйчac установлена на ЭВМ. Во время первого
сеанса очень полезно, ocoбeннo для нeпpoгpaммиcтoв,
ecли pядoм бyдeт нaxoдитьcя специалист по системе.
При составлении некоторых уроков могли быть допущены
ошибки, иногда компонента в конкретной версии ОС рабо-
тает по-другому; такие уроки могут быть пропущены,
хотя требуется определенный навык для того, чтобы от-
личить допущенную обучаемым ошибку от "разночтения"
компонент.
16
AПK.00210-01 33 01-5
ИМЯ:
lex - генератор программ лексического анализа.
ФОРМАТ:
lex [-tvfn] [файл]...
ОПИСАНИЕ:
Команда lex генерирует программы, которые могут ис-
пользоваться для простого лексического анализа текста.
Входные файлы (по умолчанию - стандартный ввод) содер-
жат регулярные выражения, которые должны отыскиваться,
и действия, записанные на языке Си, которые должны вы-
полняться при нахождении этих выражений.
Генерируется исходная программа "lex.yy.с" на языке
Си, которая должна компилироваться следующим образом:
cc lex.yy.c -ll
При работе этой программы производится копирование не-
распознанных порций входных данных на выход, а также
выполнение соответствующих действий, описанных на язы-
ке Си, для каждого регулярного выражения, которое было
распознано.
Приведенная ниже программа на языке lex выполняет пре-
образование из верхнего регистра в нижний, удаляет
пробелы в конце строк и заменяет несколько пробелов на
один:
%%
17
AПK.00210-01 33 01-5
[A-Z] putchar(yytext[0]+'a'-'A');
[ ]+$
[ ]+ putchar(' ');
Команда имеют следующие параметры:
-t поместить результат в стандартный файл вывода, а
не в файл lex.yy.с;
-v выдать размеры внутренних таблиц;
-n не выдавать размеры таблиц (устанавливается по
умолчанию);
-f "быстрая" компиляция, не проводится упаковка ре-
зультирующих таблиц. Годится только для малых
программ.
-d включение отладочного режима компилятора (ключ
может задаваться только при использовании диаг-
ностического варианта lex).
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
yacc
18
AПK.00210-01 33 01-5
ИМЯ:
ln - создание альтернативных имен.
ФОРМАТ:
ln имя1 [имя2] ...[имя n] [d2]
ОПИСАНИЕ:
Один и тот же файл (вместе со своим размером, информа-
цией, относящейся к защите, и т.д.) может иметь нес-
колько альтернативных имен. Не существует способа от-
личить альтернативное имя данного файла от его исход-
ного имени, любые изменения в файле выполняются неза-
висимо от имени, под которым известен этот файл.
Koмaндa ln coздaeт для кaждoгo yкaзaннoгo фaйлa "имя
1",...,"имя н" aльтepнaтивнoe имя в cyщecтвyющeм
cпpaвoчникe "d2". Ecли в кaчecтвe аргументов команды
заданы "имя 1" и "имя 2", то для существующего файла
"имя 1" coздaeтcя aльтepнaтивнoe имя "имя 2" в тeкyщeм
кaтaлoгe.
ЗАМЕЧАНИЯ:
Создавать альтернативные имена справочников, или по-
мещать имена файлов в разных файловых системах запре-
щается.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
rm
19
AПK.00210-01 33 01-5
ИМЯ:
lock - блокировать терминал.
ФОРМАТ:
lock
ОПИСАНИЕ:
Команда lock запрашивает у пользователя пароль, затем
печатает на терминале "Again" и блокирует этот терми-
нал до тех пор, пока пароль не будет указан повторно.
Если пользователь забудет пароль, у него нет другой
возможности, кроме как зарегистрироваться где-то в
другом месте и завершить блокирующий процесс.
20
AПK.00210-01 33 01-5
ИМЯ:
logoff - выход из системы ДЕМОС.
ФОРМАТ:
logoff
ОПИСАНИЕ:
Команда logoff предназначена для выхода пользователя
из системы ДЕМОС. Выход из системы по команде logoff
происходит из любого уровня файловой системы ДЕМОС.
Признаком выхода из системы ДЕМОС служит изображение
на экране дисплея "заставки" с идентификацией СВМ ЕС.
21
AПK.00210-01 33 01-5
ИМЯ:
look - поиск строк в отсортированном списке.
ФОРМАТ:
look [-df] строка [файл]
ОПИСАНИЕ:
Команда look просматривает отсортированный "файл" и
печатает все строки, начинающиеся символами "строка".
Используется двоичный поиск. Опции "d" и "f" влияют на
сравнение, как и в sort:
d "словарный" порядок: только буквы, цифры, симво-
лы табуляции и пробелы участвуют в сравнении;
f Игнорируется регистр символов. Большие буквы
считаются при сравнении равными малым.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
sort, grep
22
AПK.00210-01 33 01-5
ИМЯ:
lorder - определить связи об'ектных файлов.
ФОРМАТ:
lorder файл ...
ОПИСАНИЕ:
Входная информация представляет собой один или нес-
колько об'ектных библиотечных или архивных файлов. В
результате работы получается список пар имен об'ектных
файлов. Первый файл пары ссылается на внешний иденти-
фикатор, определенный во втором. Выход может быть об-
работан командой tsort для нахождения такого порядка
размещения модулей в библиотеке, который обеспечивает
однопроходный поиск для ld.
Следующая строка предназначена для построения новой
библиотеки из существующих файлов ".o":
ar cr library `lorder *.o | tsort`
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
tsort, ld, ar
ЗАМЕЧАНИЯ:
имена об'ектных файлов как внутри, так и вне библи-
отек, должны иметь окончание ".o" - в противном случае
результат будет бессмысленным.
23
AПK.00210-01 33 01-5
ИМЯ:
lpq - выдaть cocтoяниe oчepeди к AЦПУ.
ФОРМАТ:
lpq
ОПИСАНИЕ:
Команда lpq выдает соотояние очереди файлов, ожидающих
вывода на АЦПУ. Каждый элемент очереди выдается, с
указанием имени данного файла, размера файла в симво-
лах, владельца и идентификационного номера. Идентифи-
катор полезен для удаления заданного входа из очереди
с помощью команды lprm.
ФАЙЛЫ:
/usr/spool/lpd/*
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpr, lprm
24
AПK.00210-01 33 01-5
ИМЯ:
lpr - постановка файла в очередь на печать.
ФОРМАТ:
lpr [-m] [-c] [-r] [-b заголовок] [имя...]
ОПИСАНИЕ:
Команда lpr вызывает занесение указанных файлов в оче-
редь на печать. Если файлы не указаны, считывается
стандартный файл ввода.
Ключи определяют следующие режимы выполнения команды:
-m после завершения печати файла пользователю посы-
лается сообщение с помощью mail;
-c по умолчанию, файлы, которые требуется выдать на
АЦПУ, копируются в справочник /tmp/spool/lpd - в
этом режиме в /tmp/spool/lpd появляется только
ссылка на файл и копирования не происходит;
-r после завершения печати указанные файлы удаляют-
ся;
-b По умолчанию, перед каждым файлом печатается за-
головок, который содержит имя пользователя, за-
пустившего данную команду и время выдачи. В этом
режиме заголовок дополняется словом, определен-
ным в параметре "заголовок", которое печатается
большими буквами в середине листа. Печатается не
более 14 символов "заголовка".
25
AПK.00210-01 33 01-5
ФАЙЛЫ:
/usr/spool/lpd/*
/usr/lib/lpd "демон" печати
/usr/lib/lpf фильтр для обработки
заголовков и подчеркиваний
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpq, lprm
ЗАМЕЧАНИЯ:
В режиме -c, при невожможности завести ссылку (исход-
ный файл находится в другой файловой системе), файл
все-таки копируется.
В данной версии не реализовано повторение печати файла
при сбое АЦПУ.
26
AПK.00210-01 33 01-5
ИМЯ:
lprm - удалить файл из очереди к АЦПУ.
ФОРМАТ:
lprm [идентификатор...] [имя-файла...] [владельца...]
ОПИСАНИЕ:
Команда lprm удаляет файл из очереди к АЦПУ. Идeнти-
фикaтop, имя-фaйлa или влaдeльцa кoнкpeтнoгo фaйлa из
oчepeди можно узнать с помощью команды lpq. Все файлы,
удовлетворяющие заданному условию, будут удалены.
Выдается идентификатор каждого удаленного из очереди
файла.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
lpr, lpq
ФАЙЛЫ
/usr/spool/lpd/*
27
AПK.00210-01 33 01-5
ИМЯ:
ls - выдать содержимое справочника.
ФОРМАТ:
ls [-1ACFRabcdfgilmnqrstux] имя ... l [ключи ls] имя
...
ОПИСАНИЕ:
Для каждого параметра, являющегося именем справочника,
команда ls выдает список входящих в него файлов и
справочников. Для каждого параметра, являющегося
файлом, команда ls повторяет его имя и сообщает всю
остальную затребованную информацию. По умолчанию вы-
ходная информация сортируется в алфавитном порядке.
Если параметры не указаны, выдается содержимое текуще-
го справочника.
Имеется три возможных формата выдачи. Выбираемый
формат зависит от того, направляется ли вывод на тер-
минал, а также может управляться с помощью ключей.
Стандартным форматом для выдачи на терминал является
вывод в несколько столбцов .Если вывод производится не
на терминал, по умолчанию выдается по одному имени в
строке. Кроме того, с помощью ключа "-m", может зада-
ваться формат, в котором имена файлов выдаются поперек
страницы, разделяясь символами ",". При вызове "l" ,
по умолчанию подразумевается ключ "-m".
Файлы, которые рассматриваются не как содержимое спра-
вочника, всегда сортируются поперек страницы, а не в
28
AПK.00210-01 33 01-5
столбцах таблицы сверху вниз. Это связано с тем, что
имена отдельных файлов могут иметь произвольную длину.
Имеется несколько ключей:
-l Выдавать "в длинном формате", указывая для каж-
дого файла его режим, число связей, владельца,
размер в байтах и время последней модификации.
Если файл является специальным файлом, поле раз-
мера будет содержать основной и дополнительный
номера устройства;
-t Отсортировать в соответствии со временем модифи-
кации (вначале с более поздним временем модифи-
кации) вместо обычной сортировки по именам;
-a Выдавать все имена (обычно имена файлов начина-
ющиеся с точки "." не выдаются);
-s Указать размер для каждого имени в блоках, вклю-
чая блоки косвенной адресации;
-d Если параметр является именем справочника, выда-
вать только его имя, а не содержимое (использу-
ется главным образом с "-l" для получения состо-
яния справочника);
-r Изменить порядок сортировки на противоположный,
чтобы получить файлы в обратном алфавитном по-
рядке или вначале более старые файлы;
-u Использовать время последнего доступа вместо
29
AПK.00210-01 33 01-5
времени последней модификации при сортировке
(-t) или распечатке (-l);
-i Указать в первой позиции сообщения для каждого
перечисляемого файла i-номер;
-f Приводит к тому, что каждый параметр интерпрети-
руется как имя справочника, и распечатывается
имя, находящееся в каждой позиции. Этот ключ
отключает ключи "-l", "-t", "-s" и "-r", и вклю-
чает ключ "-a"; порядок такой, в котором имена
находятся в справочнике;
-g Указать идентификатор группы вместо идентифика-
тора владельца при подробной выдаче ("-l");
-m Используется потоковый выходной формат;
-1 Используется формат с одним именем в строке,
например, при выводе на терминал;
-c Используется вывод в несколько столбцов, напри-
мер, при выводе в файл или в поток (pipe);
-q Вызывает печать символа "?" вместо неизобража-
емых символов в именах файлов; это обычно произ-
водится, если выходным устройством является тер-
минал;
-x Вызывает сортировку состоящей из нескольких
столбцов выдачи поперек страницы, а не сверху
вниз; такой формат является стандартным, если
30
AПK.00210-01 33 01-5
последним символом имени, с которым была вызвана
программа, является "x";
-A Bыдaютcя вce имeнa тeкyшeгo кaтaлoгa (aнaлoгичнo
"-a") кроме '.' и '..' ;
-F К именам справочников при выдаче добавляется
символ "/"; имена исполняемых файлов дополняются
символом "*";
-R Рекурсивная выдача содержимого всех встречающих-
ся справочников.
Статус файла, выдаваемый при указании ключа "-l", сос-
тоит из 11 символов, которые интерпретируются следу-
ющим образом. Первым символом является:
d Если данный файл является справочником;
b Если данный файл является специальным файлом
блочного типа;
c Если данный файл является специальным файлом
символьного типа;
- Если данный файл является простым файлом.
Следующие 9 символов интерпретируются как три набора
по три символа в каждом. Первый набор указывает полно-
мочия владельца, следующий - полномочия других пользо-
вателей той же группы, и последний - полномочия всех
прочих пользователей. В каждом таком наборе три симво-
31
AПK.00210-01 33 01-5
ла указывают полномочия соответственно для чтения, за-
писи и выполнения данного файла как программы. Для
справочника полномочие "выполнение" интерпретируется
как разрешение поиска в каталоге заданного файла. Пол-
номочия задаются следующим образом:
r если файл доступен для чтения;
w если файл доступен для записи;
x если файл доступен для выполнения;
- если указанный вид доступа не разрешается.
Символ полномочия для выполнения группой указывается
как "s", если этот файл имеет режим установки иденти-
фикации группы; аналогично, символ полномочия для вы-
полнения пользователем указывается как "s", если файл
имеет режим установки идентификации пользователя.
Последним символом режима (обычно "x" или "-") являет-
ся "t", если установлен бит режима 1000.
Когда распечатываются размеры файлов в справочнике,
выдается общее количество блоков, включая блоки кос-
венной адресации.
ЗАМЕЧАНИЯ:
Символы табуляции и новой строки в именах файлов
рассматриваются как печатаемые символы.
Предполагается, длина строки устройства вывода равна
32
AПK.00210-01 33 01-5
80 позициям. Ширина столбцов составляет обычно 15 сим-
волов. Если заданы ключи "-i" или "-s", ширина состав-
ляет 20 символов. Если одновременно заданы ключи "-i"
и "-s", ширина составляет 25 символов. В любом слу-
чае, если задан ключ "-l" или "-n", предполагается,
что в строке помещается информация только об одном
имени.
Установка ключей в зависимости от того, является ли
выводное устройство терминалом, нежелательна, так как
ls -s ! lpr
значительно отличается от
ls -s
Выбор ширины столбцов является весьма ограниченным для
терминалов, которые могут выполнять табуляцию.
33
AПK.00210-01 33 01-5
ИМЯ:
m4 - макропроцессор.
ФОРМАТ:
m4 [файл ...]
ОПИСАНИЕ:
Макропроцессор m4 предназначен для использования в ка-
честве препроцессора языков ФОРТРАН, Си и других.Каж-
дый из файлов, указанных в параметрах, обрабатывается
по очереди. Если параметры отсутствуют или параметром
является "-", считывается стандартный файл ввода.
Обработанный текст записывается в стандартный файл вы-
вода.
Формат макровызова:
имя(пар1,пар2,...,парN)
Символ "(" должен следовать непосредственно после име-
ни макроопределения. Если символ "(" отсутствует после
имени, считается, что макро не имеет параметров. При
перечислении параметров начальные пробелы, символы та-
буляции и новой строки, не заключенные в кавычки, иг-
норируются. Имена макроопределений могут состоять из
букв, цифр и символов подчеркивания "_", причем первым
символом не должна быть цифра.
Можно отказаться от немедленной подстановки значения
макроимени. Для этой цели соответствующие последова-
тельности символов заключаются в апострофы (`'). При
34
AПK.00210-01 33 01-5
каждом просмотре макропроцессора один уровень апостро-
фов удаляется.
Когда обнаруживается имя макроопределения, его пара-
метры последовательно обрабатываются. Вычисление мак-
роопределений обычно продолжается при просмотре пара-
метров, и любые запятые или правые скобки, которые
могут появиться в значении вложенного вызова, имеют
такое же действие, как и исходный текст. После подста-
новки значение макро помещается обратно во входной
поток и просматривается повторно.
Возможно задание своих макро с совпадающими именами,
однако после этого их начальный смысл теряется. Как
правило встроенные макро выдают значение "пусто" (если
в описании не сказано иначе). Краткое описание встро-
енных макроопределений м4, которые представляют собой
входной язык макропроцессора:
define(имя,значение)
Второй параметр устанавливается в качестве зна-
чения макроимени, указаного в первом параметре.
Каждое употребление $n в замещающем тексте, где
n - цифра, заменяется на n-ый параметр. Параметр
0 представляет собой имя макро. Отсутствующие
параметры заменяются пустыми строками;
undefine(`имя')
Удаляет определение макро, указанного в парамет-
ре;
35
AПK.00210-01 33 01-5
ifdef(`имя',парам2,парам3)
Если первый параметр определен, значением явля-
ется второй параметр, если нет - третий. Если
третий параметр отсутствует, значением является
пусто;
changequote(l,r)
Заменяет символы экранирования (апострофы) на
первый и второй параметры. Вызов changequote без
параметров восстанавливает исходные значения
(т.е. `');
divert(n)
Макропроцессор обслуживает до 10 выводных
файлов, пронумерованных от 0 до 9. Конечный
вывод представляет собой конкатенацию этих
файлов в порядке их номеров. По умолчанию инфор-
мация выдается в стандартный файл вывода (файл с
номером 0). Макро divert заменяет текущий выход-
ной файл на указанный в параметре (цифровая
строка). Вывод, который направляется в файл но-
мером, не входящим в диапазон 0-9, отбрасывает-
ся;
undivert(n1,n2 ...)
Вызывает немедленный вывод текста из всех ука-
занных файлов (или из всех файлов, если парамет-
ры отсутствуют). Текст может быть выведен в дру-
гой файл. При выводе информация в файле уничто-
36
AПK.00210-01 33 01-5
жается;
divnum
Возвращает значение текущего выходного файла;
dln Считывает и отбрасывает символы до следующего
символа новой строки включительно;
ifelse(a,b,c,d)
Имеет три или более параметров. Если первый па-
раметр совпадает со вторым, третий параметр ис-
пользуется в качестве значения. Если это не так
и если имеется более четырех параметров, данный
процесс повторяется для параметров 4, 5, 6 и 7.
В противном случае значением является либо чет-
вертая строка, либо, если она отсутствует -
пусто;
incr(число)
Возвращает значение своего параметра, увеличен-
ное на 1. Исходная строка цифр рассматривается
как десятичное число;
eval(выражение)
Выдает значение указанного выражения. При вычис-
лении используется 32-разрядная целая арифмети-
ка. Операции включают в себя +, -, *, /, %, ^
(возведение в степень), отношения, скобки;
len(строка)
Возвращает количество символов в "строке";
37
AПK.00210-01 33 01-5
index(строка_1,строка_2)
Возвращает номер символа "строки_1" с которого
начинается вхождение "строки_2". Счет символов
начинается с нуля. Если в "строке_1" вхождений
"строки_2" не обнаруженно, возвращается -1;
substr(s,i,n)
Возвращает подстроку строки "s", начинающуюся с
i-той позиции, длиной в "n" символов. Счет сим-
волов начинается с нуля. Если третий параметр
отсутствует, считается, что подстрока продолжа-
ется до конца строки "s";
translit(s,f,t)
Перекодирует строку "s", заменяя символы, входя-
щие в строку "f", соответствующими символами
строки "t";
include(имя)
Заменяется на содержимое файла с указанным "име-
нем";
sinclude(имя)
Аналогично include, за исключением того, что ес-
ли файл недоступен, диагностика не выдается и
процесс работы макропроцессора не прерывается;
syscmd(команда)
Выполняет указанную "команду" системы. Значение
не возвращается;
38
AПK.00210-01 33 01-5
maketemp(...XXX...)
Заменяет символы XXX идентификатором текущего
процесса;
errprint(строка_1,строка_2,...)
Выдает указанные строки в стандартный файл диаг-
ностических сообщений;
dumpdef(имя_1,имя_2...)
Выдает текущие имена и определения для указанных
параметров (или все, если параметры отсутству-
ют);
39
AПK.00210-01 33 01-5
ИМЯ:
mail - почтoвая служба.
ФОРМАТ:
mail [+] [-i] [адресат]...
mail [+] [-i] -f файл
ОПИСАНИЕ:
команда mail предназначена для реализации обмена сооб-
щениями между пользователями посредством аппарата
"почтовых ящиков". Почтовым ящиком пользователя, обыч-
но является файл в справочнике /usr/spool/mail с име-
нем аналогичным имени пользователя, под которым тот
зарегистрирован в системе. Применяя команду mail,
пользователь получает возможность просмотреть
собственный "почтовый ящик" или дополнить чужой своим
сообщением. Если в команде не указан "адресат", выда-
ется почта пользователя, сообщение за сообщением, в
порядке "последним пришел - первым вышел". Когда пере-
числены "адресаты", mail считывает стандартный ввод до
конца файла или строки, содержащей лишь ".", и добав-
ляет его к "почтовому ящику" каждого "адресата". В на-
чале сообщения указывается имя отправителя, дата
отправления и "почтовый штемпель". В качестве "почто-
вого штемпеля" используются строки, начинающиеся сим-
волом ">". Обычно, "адресат" - имя пользователя, под
которым тот зарегистрирован в системе, если необходимо
отправить сообщение пользователю находящемуся в другой
системе (на другой машине), то перед параметром "адре-
40
AПK.00210-01 33 01-5
сат" следует указать "!имя_системы" .
Ключи задают следующие режимы работы команды:
+ изменить порядок просмотра сообщений на режим
"первым пришел - первым вышел";
-i игнорировать прерывания;
-f использовать следующий за ним параметр в ка-
честве имени файла, альтернативного "почтовому
ящику".
Во время просмотра "почтового ящика", после печати
очередного сообщения программа выдает на терминал знак
вопроса "?" и ожидает команду. Допустимы следующие от-
веты:
<return>
перейти к следующему сообщению без изменения со-
держимого почтового ящика;
d удалить сообщение и перейти к следующему;
p повторно напечатать текущее сообщение;
- вернуться к предыдущему сообщению;
s[файл]...
сохранить сообщение в файлах с указанными имена-
ми (по умолчанию, используется файл mbox в рабо-
чем справочнике пользователя);
41
AПK.00210-01 33 01-5
w[файл]...
сохранить сообщение без заголовка в файлах с
указанными именами (по умолчанию - mbox);
m[пользователь]...
направить сообщение перечисленным пользователям
(по умолчанию - себе);
EOT (<конец передачи> - <cntrl-D>)
поместить непросмотренную почту обратно в почто-
вый ящик и завершить просмотр;
q то же, что и EOT;
!команда
вызвать интерпретатор команд SHELL и выполнить
указанную команду.
Любой другой ответ приведет к выдаче приведенного выше
списка команд. Сообщение о наличии почты выдается при
регистрации.
ФАЙЛЫ:
/etc/passwd сведения о пользователях сис-
темы
/usr/spool/mail/* "почтовые ящики"
mbox сохраненная почта
/tmp/ma* временные файлы
dead.letter не отправленный по почте текст
42
AПK.00210-01 33 01-5
pif -mes [a-i]*.1 > ai1.f mx
-ES -P ant.ai ai1.f > ai1.fcps
pif -mes [j-z]*.1 > jz1.f mx
-ES -P ant.jz jz1.f > jz1.fcps
rm *.f
43
AПK.00210-01 33 01-5
ИМЯ:
make - программа сборки компонент.
ФОРМАТ:
make [-f командный_файл] [ключ] ... Файл ...
ОПИСАНИЕ:
Команда make выполняет сборку компонент из набора ис-
ходных файлов. Результатом работы make может являться
готовая программа, получаемая из множества файлов, от-
чет или статья, создаваемая с помощью системы подго-
товки документации, библиотека функций и т.п.
Для использования make, разрабатывается специальная
программа сборки, под управлением которой выполняются
все необходимые действия для получения требуемого ре-
зультата. Программа сборки (командный файл make) со-
держит информацию о порождаемых об'ектах, дерево зави-
симостей, описывающее из каких файлов получается
об'ект, и команды языка SHELL для создания об'ектов.
Имя командного файла указывается после ключа "-f", ес-
ли вместо параметра "командный_файл" указан "-", ис-