Please note that the recommended version of Scilab is 2025.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])
は,
path
で指定したファイルの中のオプションの
実行モードmode
でscilab命令を逐次実行します.
以下の mode
を指定できます :
0 : デフォルト値
-1 : 何も出力しない
1 : 各コマンド行を出力(エコーバック)する
2
: プロンプト -->
を出力する
3 : エコー + プロンプト
4 : 各プロンプト出力の前に停止します. キャレッジリターンを入力すると 実行が再開します.
7 : 停止 + プロンプト + エコー : デモを行う際に有用なモード.
exec(fun [,mode])
は関数
fun
をスクリプトとして実行します:
入出力の引数も特定の変数環境もありません.
スクリプトコードはプリコンパイル(comp参照)されるため,
この形式は最も効率的です.
スクリプト評価のこの方法により,スクリプトをライブラリの
関数として保持することが可能になります.
実行時にエラーが発生し,
'errcatch'フラグが指定されている場合,
exec
はエラーメッセージを出力せずに
命令を実行を破棄し,エラー番号をierr
に
代入して復帰します.
'errcatch' フラグが存在しない場合,標準のエラー処理が
機能します.
注意k
exec
ファイルは,
インライン関数定義構文(関数の項参照)により関数を定義する際に使用されます.
例
// スクリプトファイルを作成 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 "
<< deff | Functions | execstr >> |