Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: Français - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Advanced functions > exec


script file execution

Calling Sequence

exec(path [,mode])
exec(fun [,mode])
ierr=exec(path,'errcatch' [,mode])
ierr=exec(fun,'errcatch' [,mode])



a string, the path of the script file


an integer scalar, the execution mode (see below)


a scilab function


integer, 0 or error number


exec(path [,mode]) executes sequentialy the scilab instructions contained in the file given by path with an optional execution mode mode .

The different cases for mode are :

0 : the default value

-1 : nothing is printed

1 : echo of each command line

2 : prompt --> is printed

3 : echoes + prompts

4 : stops before each prompt. Execution resumes after a carriage return.

7 : stops + prompts + echoes : useful mode for demos.

exec(fun [,mode]) executes function fun as a script: no input nor output argument nor specific variable environment. This form is more efficient, because script code may be pre-compiled (see comp). This method for script evaluation allows to store scripts as function in libraries.

If an error is encountered while executing, if 'errcatch' flag is present exec issues no error message, aborts execution of the instructions and resumes with ierr equal to the error number. If 'errcatch' flag is not present, standard error handling works.


exec files may now be used to define functions using the inline function definition syntax (see function).

exec supports files encoded as ANSI/ASCII and UTF-8.

length of each line in a file is limited to 4096 characters.


// create a script file

// execute it
whos -name "a "

// create a function
clear a b
// call the function
// a is a variable created in the environment of the function foo
//    it is destroyed when foo returns
whos -name "a "

x=1 //create x to make it known by the script foo

// a and y are created in the current environment
whos -name "a "

See Also

  • execstr — execute Scilab code in strings
  • evstr — evaluation of expressions
  • comp — scilab function compilation
  • mode — select a mode in an exec-file
  • chdir — changes Scilab current directory
  • pwd — gets Scilab current directory
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:34:57 CEST 2012