- Справка Scilab
- Функции
- Встроенные и внешние
- Libraries
- profiling
- argn
- bytecode
- code2str
- comp
- deff
- edit
- exec
- execstr
- fun2string
- funcprot
- function
- функции
- getd
- head_comments
- listfunctions
- macr2lst
- macr2tree
- макрос
- macrovar
- mode
- перегрузка
- sciargs
- str2code
- tree2code
- varargin
- varargout
- bytecodewalk
- recompilefunction
Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
exec
исполнение файла-сценария
Последовательность вызова
exec(path [,mode]) exec(fun [,mode]) ierr = exec(path, 'errcatch' [,mode]) ierr = exec(fun, 'errcatch' [,mode])
Аргументы
- path
строка, путь к файлу-сценарию.
- mode
целочисленный скаляр, режим исполнения (см. ниже).
- fun
Scilab-функция.
- ierr
целое число, 0 либо номер ошибки.
Описание
exec(path [,mode]) исполняет последовательно
Scilab-инструкции, содержащиеся в файле, указанном в пути
path, в режиме исполнения, указанным
необязательным аргументом mode.
Режим исполнения mode имеет следующие
значения:
- 0
значение по умолчанию.
- -1
вывод на экран не производится.
- 1
отображает каждую командную строку.
- 2
на экран выводится строка приглашения
-->.- 3
отображения командных строк + строки приглашения.
- 4
останавливается перед каждой строкой приглашения. Исполнение возобновляется после возврата каретки.
- 7
остановки + строки приглашения + вывод на экран командных строк: режим, полезный для демонстраций.
exec(fun [,mode]) исполняет функцию fun как файл-сценарий: ни входного, ни выходного аргумента, ни особого окружения переменных. Эта форма более эффективна, поскольку код сценария может быть предварительно скомпилирован (см. comp). Этот метод исполнения сценария позволяет хранить сценарии в виде функций в библиотеках.
Если во время исполнения произойдёт ошибка, и если будет
указан флаг 'errcatch', то функция
exec не будет выдавать сообщения об
ошибке, прервёт исполнение инструкций и вернёт номер ошибки
ierr. Если же флаг
'errcatch' не будет указан, то будет
работать стандартная обработка ошибок.
Примечания
Теперь файлы для функции exec можно использовать для определения функций, используя синтаксис определения функции в строке (см. function).
Функция exec поддерживает файлы с кодировкой ANSI/ASCII и UTF-8.
Длина каждой строки в файле ограничена 4096 символами.
Примеры
// создадим файл-сценарий mputl('a=1;b=2',TMPDIR+'/myscript') // выполним его exec(TMPDIR+'/myscript') whos -name "a " // создадим функцию deff('y=foo(x)','a=x+1;y=a^2') clear a b // вызовем функцию foo(1) // a - переменная, созданная в окружении функции foo; // она будет уничтожена после возврата из foo whos -name "a " x=1 //создадим x чтобы его узнал сценарий foo exec(foo) // a и y созданы в текущем окружении whos -name "a " whos -name "y "
Смотрите также
| Report an issue | ||
| << edit | Функции | execstr >> |