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

scilab

lance Scilab en mode interactif ou batch avec options

Syntaxe

scilab <Options>

Options

La liste des options de lancement de Scilab -- incluant celles à l'usage des développeurs -- peut être affichée dans le terminal de l'OS, en utilisant --help :

unix_w(SCI+"/bin/scilab --help 2>&1")
--> unix_w(SCI+"/bin/scilab --help 2>&1")
Usage: Scilab <options>
      -args arg1 arg2..: Send directly some arg1 arg2 .. data to the session.
                         arg1 arg2 .. values can then be read through sciargs().
      -e Instruction   : Execute the scilab instruction given in Instruction argument.
                         -e and -f arguments are mutually exclusive.
      -f File          : Execute the scilab script given in File argument.
                         -e and -f arguments are mutually exclusive.
      -quit            : force scilab exit after execution of script from -e or -f argument.
                         Flag ignored if it is not used with -e or -f argument.
      -l lang          : Change the language of scilab (default : en_US).
      -nw              : Enable console mode.
      -nwni            : Enable terminal mode.
      -ns              : Do not execute etc/scilab.start.
      -nouserstartup   : Do not execute user startup files (SCIHOME/scilab.ini|.scilab).
      -noatomsautoload : Do not autoload eligible ATOMS modules.
      -nb              : Do not display the banner (no banner).
      -scihome <dir>   : Force SCIHOME to <dir>.
      -texmacs         : Option to use Scilab from documents through http://texmacs.org.
      -version         : Display the Scilab version (no session opened).
      -display Display : Set the display to the X server Display (XWindow systems only).
                         unix:0.0 is the default.
      --help           : Display this help.

Developer Trace arguments:
      --parse-trace    : Display bison state machine evolution.
      --AST-trace      : Display ASCII-art AST to be human readable.
      --pretty-print   : Display pretty-printed code, standard Scilab syntax.

Developer Timer arguments:
      --AST-timed      : Time each AST node.
      --timed          : Time global execution.

Developer Debug arguments:
      --no-exec        : Only do Lexing/parsing do not execute instructions.
      --context-dump   : Display context status.
      --exec-verbose   : Display command before running it.
      --timeout delay  : Kill the Scilab process after a delay.

Leur description suit ci-dessous.

-args arg#1 arg#2 ..

Cette option permet de transmettre des données à la session Scilab à ouvrir :

  • Des données consécutives sont séparées par un ou plusieurs espaces.
  • Une expression entre guillemets " constitue une donnée unique.
  • Pour inclure un guillemet dans une donnée, écrire \" au lieu de ".
  • L'apostrophe ' est un caractère normal. Il n'a pas de signification particulière.

Dans la session ouverte, les données arg#1, arg#2, .. peuvent être récupérées comme autant d'expressions texte avec sciargs().

Exemple :

C:\Users\Me> C:\SCIdir\bin\scilab -nw -nb -noatomsautoload -args "Hello %USERNAME%" 1.2345 \"%cd%\"
// Dans la session ouverte :
a = sciargs()
i = find(a=="-args")
a(i+1)
evstr(a(i+2))*2
"Cette session a été lancée depuis " + a(i+3)
--> // Dans la session ouverte :
--> a = sciargs()
 a  =
! c:\SCIdir\bin\WScilex-cli.exe !
! -nb                           !
! -noatomsautoload              !
! -args                         !
! Hello John                    !
! 1.2345                        !
! "C:\Users\Me"                 !

--> i = find(a=="-args")
 i  =
    5.

--> a(i+1)
 ans  =
 Hello John

--> evstr(a(i+2))*2
 ans  =
    2.469

--> "Cette session a été lancée depuis " + a(i+3)
 ans  =
 Cette session a été lancée depuis "C:\Users\Me"

Noter ici que >scilab -nw a été traduit en Wscilex-cli.exe par le script batch de lancement scilab, de sorte que l'option "-nw" ne figure pas dans le résultat de sciargs() (voir plus loin).

Utiliser -args comme dernière option sur la ligne de commande est plus sûr.

-display Display

Cette option n'est valide que pour les version basées sur Xwindow, elle peut alors être utilisée pour specifier un server X. La valeur par défaut est unix:0.0

-display peut être remplacé par -d

-e Instructions

À l'issue du démarrage complet de la session, cette option

  • fixe le dossier de travail de Scilab au dossier système depuis lequel Scilab a été lancé. Voir l'exemple donné plus bas pour l'option -f. Puis,

  • éxécute les Instructions Scilab indiquées. Exemple :

    OS> scilab -nw -e  "disp(\"Hello\"); a=%pi+%i; disp(exp(a)); exit;" -nb

Les options -e et -f ne peuvent pas être utilisées ensemble.
-f Fichier

Si cette option est indiquée, alors au début de la session Scilab, après l'exécution des fichiers de démarrage de Scilab et de l'utilisateur, et après l'activation des Préférences de l'utilisateur -- dont celles concernant le dossier de travail par défaut --,

  • le dossier de travail de Scilab est fixé au dossier système depuis lequel Scilab a été lancé. Par exemple,

    D:\users\me\scilab\dev> C:\SCIdir\bin\scilab -f ..\test.sce
    exécutera cd("D:\users\me\scilab\dev").

  • le script Scilab Fichier est exécuté. S'il est indiqué avec un chemin relatif (.\ par défaut, ou tel que ..\ dans l'exemple ci-dessus), celui-ci se réfère au nouveau dossier de travail de Scilab.

Un fichier avec l'extension .xcos sera ouvert par Xcos.

-quit

Cette option force Scilab à quitter la session après l'exécution des instructions données par l'option -e ou par le script indiqué via l'option -f, y compris en cas d'erreur d'exécution. Cette option doit toujours être utilisée en mode batch. Elle est ignorée lorsque l'option -e ou -f n'est pas utilisée.

-l lang

Cette option permet de sélectionner la langue de l'utilisateur. lang peut avoir les valeurs suivantes : ca_ES de_DE en_US es_ES fr_FR ja_JP pt_BR ru_RU zh_CN zh_TW.

Pour des raisons de compatibilité, les valeurs -l fr, -l pt, ou -l en sont également utilisables, pour sélectionner le francais, le portugais (brésilien), ou l'anglais.

Sous Windows, en modes Scilab "-nw" ou "-nwni", la police sélectionnée pour le terminal doit être TrueType pour supporter l'encodage UTF-8 des polices internationales, telle que Monospaced (meilleur choix, si disponible) ou Consolas ou Lucida Console..

Avec certains systèmes, la compilation des locales peut être nécessaire pour rendre correctement les polices UTF-8.

-nb

"no banner" : supprime l'affichage du message de chargement de Scilab.

-ns

"no startup" : supprime l'éxécution du script de démarrage "principal" SCI/etc/scilab.start ainsi que les fichiers de démarrage "utilisateur" SCIHOME/.scilab et SCIHOME/scilab.ini ne sont pas pas exécutés.

Cette option désactive de nombreuses fonctionnalités de Scilab. À utiliser avec expertise et discernement.
-nouserstartup

Si cette option est fournie, les fichiers de démarrage "utilisateur" SCIHOME/.scilab, SCIHOME/scilab.ini ne sont pas exécutés.

-noatomsautoload

supprime le chargement en début de session des modules ATOMS installés.

-nw

si cette option est présente, Scilab est lancé en tant qu'interprêteur de commandes avancé : la console est sans menus, mais les fonctionnalités Java sont disponibles (graphiques, export, xcos, scinotes, navigateur d'aide, module JIMS, etc).

La redirection (piping) est disponible pour tous les systèmes d'exploitation supportés. Voir les exemples pour plus de détails.

Le fichier Scilab executable réellement lancé lorsque l'option "-nw" est utilisée est

  • Sous Windows : WScilex-cli.exe.
  • Sous Linux ou MacOS : scilab-adv-cli (Scilab Advanced Command Line Interpreter).

-nwni / -nogui
Cette option supprime le chargement de la Machine Virtuelle Java en mémoire. Elle accélère le démarrage de Scilab et réduit la mémoire consommée. Mais alors...
Scilab est lancé en tant que simple interprêteur de commandes, sans aucune fonctionalité avancée requérant la JVM : les fonctionalités graphiques, les interfaces graphiques dont les navigateurs d'aide, de démos, de modules externes, de variables, l'éditeur Scinotes, le module "Java depuis Scilab"... ne sont pas disponibles dans ce mode.

La redirection (piping) est disponible pour tous les systèmes d'exploitation supportés. Voir les exemples pour plus de détails.

Le fichier Scilab executable réellement lancé lorsque l'option "-nwni" est utilisée est

  • Sous Windows : Scilex.exe.
  • Sous Linux ou MacOS : scilab-cli (Scilab Command Line Interpreter).

-scihome dir

Affecte à SCIHOME le chemin spécifié par dir (entre guillemets s'il inclut des espaces)(pas entre apostrophes !). Si dir est un chemin relatif il est ajouté au répertoire parent de SCIHOME.

Sous Windows : %USERPROFILE%\AppData\Roaming\Scilab\dir
Sous Linux/MacOS : ~/.Scilab/dir

--texmacs

Cette option est utilisée lorsque Scilab est utilisé comme interface de calcul au sein du logiciel libre d'édition Scientifique TeXmacs, via le module ATOMS TeXmacs. Celui-ci doit être préalablement installé sous Scilab avec la commande atomsInstall('texmacs').

-version

Cette option affiche la version de Scilab dans le terminal, sans ouvrir de session Scilab.

Options supplémentaires sous Unix/Linux ou Mac OS X

Conseil: utiliser ces options à partir de l'arborescence source de Scilab.

-debug

Lance Scilab sous gdb.

Définir la variable SCILAB_GDB_OPT pour ajouter des options supplémentaire à gdb.

-debug-rr

Lance Scilab sous rr.

-debug-kdbg

Lance Scilab sous kdbg.

-profiling

Lance Scilab sous valgrind.

Définir la variable SCILAB_VALGRIND_OPT pour ajouter des options supplémentaire à valgrind (et surcharger les options de valgrind existantes).

-profiling-visu

Lance Scilab sous callgrind.

Définir la variable SCILAB_VALGRIND_OPT pour ajouter des options supplémentaires à callgrind (et surcharger les options de callgrind existante).

-electric-fence

Lance Scilab sous Electric Fence.

Variables d'environnement

SCIVERBOSE

Si cette variable d'environnement est présente, le script de démarrage de Scilab affichera les informations de debug. Principalement utilisée pour du debug ou le report de bugs.

JAVA_HOME

Indique quelle version de Java utiliser. Par exemple, JAVA_HOME=/usr/lib/jvm/java-7-openjdk/ scilab démarrera Scilab avec la version 7 de Java.

SCI_DISABLE_TK

Désactive les fonctionnalités Tk (mais pas Tcl)

SCI_JAVA_ENABLE_HEADLESS

Démarre Java en mode Headless (ie sans les fonctionnalités graphiques).

Options JVM (Java Virtual Machine)

Les options décrites ci-dessous sont inutiles et sans effet lorsque l'option -nwni est utilisée.

A partir de la version 5.0 de Scilab, l'interface graphique et le système de génération de la documentation sont basés sur des fonctionnalités Java. Dans certains cas, il peut être intéressant de modifier les options de la JVM (Java Virtual Machine).

Ces options sont accessibles dans le fichier SCI/etc/jvm_options.xml. En particulier, les trois options suivantes sont disponibles :

-XmxXXXm

Cette option indique la quantité de mémoire mise à disposition de la machine virtuelle Java. Par défaut, la valeur est de 256M. Si vous changez cette valeur, assurez vous que cette valeur ne dépasse pas la quantité de mémoire accessible sur le système.

Cette valeur peut être réglée dans les préférences.

-Djava.compiler=JIT

Avec la valeur JIT, le compilateur Java Just In Time (JIT) est activé. Il est activé par défault. NONE désactive le JIT et diminue de manière importante les performances.

-verbose:jni / -Xcheck:jni

Ces options activent de nombreuses vérifications, message de débug et autres contrôles sur les appels JNI (appel natif Java). Ces options sont utiles pour le débuggage et désactivée par défaut à cause de l'impact sur les performances.

De nombreuses options sont disponibles. Elles peuvent améliorer les performances, changer le rendu graphique, la gestion de la mémoire... Voir: http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

Exemples

# Lançons Scilab en mode profilage sans qu'un gdb soit lancé à chaque SIGSEGV.
# On est sous Bash
export SCILAB_VALGRIND_OPT="--db-attach=no --log-file=myfile.txt"
scilab -profiling

# Lançons Scilab en mode debug sans s'arrêter à chaque SIGSEGV
# D'abord écrivons un petit fichier de commandes
echo "handle SIGSEGV nostop" > debug.txt
# On règle l'option de gdb
# On est sous Bash
export SCILAB_GDB_OPT="--command=debug.txt"
# Lançons Scilab en mode debug
scilab -debug 

# Sous GNU/Linux, Mac OS X or Unix:
$ echo "disp(%pi)" | scilab-cli
ou
$ echo "disp(%pi)" | scilab -nwni

# Ouvre uniquement la fenêtre d'aide Scilab:
$ scilab-adv-cli -e "help()"
or
$ scilab -nw -e "help()"

# Scilab utilisé en tant que moteur de scripting
echo "if 1<>2 then exit(99) end"|scilab-cli
echo $? 

Voir aussi

  • startup — startup file
  • sciargs — arguments sur la ligne de commande Scilab
  • getpid — renvoie le numéro de processus de Scilab
  • getenv — renvoie la valeur d'une variable d'environnement
  • getversion — get scilab and modules version information
  • getscilabmode — returns scilab mode
  • consolebox — affiche ou cache le terminal Windows de lancement de Scilab
  • exit — Termine la session courante de scilab
  • preferences — Open the Scilab Preferences window
  • TeXmacs

Historique

VersionDescription
5.2.0 La redirection est disponible (piping). Option -l lang ajoutée.
5.4.0 -noatomsautoload ajoutée. La mémoire JVM réservée est réglable dans les préférences.
5.4.1 scinotes et xcos peuvent maintenant être démarrés en ligne de commande. Voir le SEP #87.
6.0.0
  • Options pour l'utilisateur :
    • Ajoutées : --help, -quit
    • Supprimée : -mem
  • Options ajoutées pour les développeurs :
    • --parse-trace, --AST-trace, --pretty-print
    • --AST-timed, --timed
    • --no-exec, --exec-verbose, --timeout delay, --context-dump.
6.0.1 Option -scihome ajoutée.

Sur Windows, un nouveau fichier scilab.bat devient le principal script executable gérant toutes les options de lancement. Il y a désormais 3 binaires exécutables Wscilex.exe, Wscilex-cli.exe, et Scilex.exe correspondant à chacun des modes STD|NW|NWNI de lancement de Scilab.

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 25 08:50:15 CET 2020