Специальные директивы Define и Include
Директива DEFINE. Она может использоваться в файлах t-mail.ctl ,
events.ctl и subst.lst . Синтаксис директивы:
Define substring newstring
С помощью данной директивы осуществляется макроподстановка, то есть, в
значениях переменных или описаниях событий и маршрутизации substring
заменяется на newstring.
Пример ( t-mail.ctl )
~~~~~~~~~~~~~~~~~~~
Define mynet 5030
Define mynode 15
Address 2:mynet/mynode.0
Freq_Nodes mynet/mynode.*
Пример ( events.ctl )
~~~~~~~~~~~~~~~~~~~
Define hubs /2 /6 /35 /27 /108
Direct hubs
Priority hubs 11:00-13:00
Директивы define в t-mail.ctl , events.ctl , subst.lst независимы.
Максимальное количество таких директив в каждом из этих файлов - 50.
Вложенность не допускается. Макросы, определенные этими директивами, ищутся
и заменяются только "справа", т.е. в поле "значение" для t-mail.ctl , правее
поля "директива" в events.ctl и правее адреса в subst.lst . В макросах можно
задавать символы в шестнадцатиричном виде, используя служебные символы
'\x'. Это, например, единственный способ задать символы "точка с запятой",
CR, LF в значимых полях конфигурационных файлов.
Пример ( t-mail.ctl )
~~~~~~~~~~~~~~~~~~~
define semicolon \x3B
...
Init AT+fclass=2 semicolon FAA=1 ; init string
Пример ( t-mail.ctl )
~~~~~~~~~~~~~~~~~~~
define cr \x0d
define login login:\x0d
...
Extern_Mail hrumhrumcr hrum.bat
Extern_Mail login uuuu.bat
Директива INCLUDE. Она может использоваться в файлах t-mail.ctl ,
events.ctl и subst.lst . Синтаксис директивы:
Include filename
С помощью данной директивы в тело файла конфигурации могут включаться
другие текстовые файлы как фрагменты. Включаемые файлы по своей структуре
должны соответствовать синтаксическим правилам того файла, в который они
помещаются. Вместо filename может быть указано полное имя файла, если же
в имени файла не указан путь - файл будет искаться в том же каталоге, в
котором находится файл с соответствующей директивой include. Максимальная
глубина вложения - 10. Число директив Include не ограничено.
Примеры:
~~~~~~~~
Include emsi.ctl
Include answer.ctl
[4] Include c:\t-mail\my_ctls\hmm.ctl