File: exec.xml

package info (click to toggle)
scilab 5.2.2-9
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 334,832 kB
  • ctags: 52,586
  • sloc: xml: 526,945; ansic: 223,590; fortran: 163,080; java: 56,934; cpp: 33,840; tcl: 27,936; sh: 20,397; makefile: 9,908; ml: 9,451; perl: 1,323; cs: 614; lisp: 30
file content (181 lines) | stat: -rw-r--r-- 5,741 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<?xml version="1.0" encoding="UTF-8"?>
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:lang="fr" xml:id="exec">
  <info>
    <pubdate>$LastChangedDate$</pubdate>
  </info>
  <refnamediv>
    <refname>exec</refname>
    <refpurpose> exécution d'un script (fichier de commandes)  </refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <title>Séquence d'appel</title>
    <synopsis>exec(path [,mode])
exec(fun [,mode])
ierr=exec(path,'errcatch' [,mode])
ierr=exec(fun,'errcatch' [,mode])</synopsis>
  </refsynopsisdiv>
  <refsection>
    <title>Paramètres</title>
    <variablelist>
      <varlistentry>
        <term>path  </term>
        <listitem>
          <para>chaîne de caractères, le chemin du script à exécuter
	  </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>mode  </term>
        <listitem>
          <para>entier, précisant le mode d'exécution (voir plus bas)
	  </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>fun  </term>
        <listitem>
          <para>identificateur d'une fonction scilab
	  </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>ierr  </term>
        <listitem>
          <para>entier, 0 ou numéro d'erreur 
	  </para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsection>
  <refsection>
    <title>Description</title>
    <para><literal>exec(path [,mode])</literal> exécute séquentiellement les instructions
      Scilab contenues dans le fichier spécifié par <literal>path</literal> avec le
      mode d'exécution optionnel <literal>mode</literal> .
    </para>
    <para>Les différentes valeurs de <literal>mode</literal> sont :</para>
    <variablelist>
      <varlistentry>
        <term>0</term>
        <listitem>
          <para>valeur par défaut</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>-1</term>
        <listitem>
          <para>rien n'est affiché</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>1</term>
        <listitem>
          <para>chaque ligne de commande est affichée</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>2</term>
        <listitem>
          <para>l'invite de commande <literal>--&gt;</literal> est affiché</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>3</term>
        <listitem>
          <para>lignes de commandes + invite de commande</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>4</term>
        <listitem>
          <para>pause dans l'exécution au début de chaque ligne. L'exécution
	reprend après un appui sur la touche entrée/return. </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>7</term>
        <listitem>
          <para>pause + invite + affichage : ce mode est utile pour les démonstrations.</para>
        </listitem>
      </varlistentry>
    </variablelist>
    <para><literal>exec(fun [,mode])</literal> exécute la fonction <literal>fun</literal> comme
      un script : aucun argument n'est utilisé en entrée ou en sortie, et
      l'exécution se fait dans l'environnement courant (les variables
      créées dans la fonction sont conservées après l'exécution). Cette
      forme est plus efficace, car ainsi les instructions du script peuvent
      être pré-compilées (voir comp). Cette méthode d'exécution des
      scripts permet aussi de stocker des scripts comme des fonctions dans des
      librairies. 
    </para>
    <para>
      Si une erreur se produit pendant l'exécution, si la chaîne de
      caractères 'errcatch' est présente, <literal>exec</literal> ne
      produit pas de message d'erreur, mais stoppe l'exécution du
      script et renvoie une valeur de <literal>ierr</literal> égale au numéro de
      l'erreur. Si la chaîne 'errcatch' n'est pas présente,
      la gestion habituelle des erreurs est utilisée.
    </para>
  </refsection>
  <refsection>
    <title>REMARQUE</title>
    <para>
      Les scripts peuvent maintenant contenir des définitions de fonctions en
      ligne (voir fonction). 
    </para>
  </refsection>
  <refsection>
    <title>Exemples</title>
    <programlisting role="example"><![CDATA[ 
// création d'un script
mputl('a=1;b=2',TMPDIR+'/myscript')

// on l'exécute
exec(TMPDIR+'/myscript')
whos -name "a "

// création d'une function
function y=foo(x),a=x+1;y=a^2,endfunction
clear a b

// appel à la fonction
foo(1)

// a est une variable créée dans l'environnement de la fonction foo
// elle est détruite à la sortie de la fonction.
whos -name "a "

x=1 // on crée la variable x pour qu'elle soit connue à l'exécution de foo
exec(foo)

// a et y ont été créées dans l'environnement courant
whos -name "a "
 ]]></programlisting>
  </refsection>
  <refsection>
    <title>Voir Aussi</title>
    <simplelist type="inline">
      <member>
        <link linkend="exec">exec</link>
      </member>
      <member>
        <link linkend="execstr">execstr</link>
      </member>
      <member>
        <link linkend="evstr">evstr</link>
      </member>
      <member>
        <link linkend="comp">comp</link>
      </member>
      <member>
        <link linkend="mode">mode</link>
      </member>
      <member>
        <link linkend="chdir">chdir</link>
      </member>
      <member>
        <link linkend="pwd">pwd</link>
      </member>
    </simplelist>
  </refsection>
</refentry>