Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.5.1 - 日本語

Change language to:
English - Français - Português - Русский

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

Scilabヘルプ >> Functions > exec

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' フラグが存在しない場合,標準のエラー処理が 機能します.

注意

exec ファイルは, インライン関数定義構文(関数の項参照)により関数を定義する際に使用されます (function参照).

exec はANSI/アスキー および 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 "

参照

  • execstr — 文字列中のScilabコードを実行
  • evstr — 式を評価する
  • comp — scilab 関数のコンパイル
  • mode — ファイル実行のモードを選択
  • chdir — Scilab カレントディレクトリを変更する
  • pwd — Scilab カレントディレクトリを出力
Report an issue
<< edit Functions execstr >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 02 13:58:35 CEST 2014