SYSTEM |
Systempermet l'exécution d'ordres système en récupérant éventuellement la sortiestandard dans une variable Adonix.
System[ variable'=' ] [ ! | !! ] [ [ serveur ] @ ]
Elément | Description | Restrictions |
nom_de_variable. | Aucune. | |
Expression alphanumérique dont lerésultat est le nom d'un serveur | Aucune | |
Expression alphanumérique dont lerésultat est un ordre système. | Aucune. |
# Copie FICHIER1 -> FICHIER2 avecredirection de la sortie d'erreur
# (sous Unix)
# Liste de répertoire sur le serveuroù se trouve la première
# application de référence (sous DOS).
Char FICHIERS(100)(50)
Char REPERTOIRE(100)
REPERTOIRE = "D:\adonix\tmp"
Infbox num$(stat1)-"ligneslues"
# Ouvrir un document word depuis untraitement Adonix
Char FICHIERS(100)(50)
"E:\tmp\document.doc"'
"Systemexpr_c" exécute l'ordre système donné dansl'expression. On peut précisier la machine sur laquelle il doit être exécuté.
Si l'on utilise les deux caractères "!!" devant l'ordre système,les opérations suivantes sont réalisées :
S'il n'y a qu'un "!" devant l'ordre système, les opérations 1 et 7seront supprimées.
S'il n'est pas nécessaire de reparamétrer la ligne, on ne mettra rien devantl'ordre système.
"Systemvariable = expr_c" lance un ordre système etrécupère la sortie standard de l'ordre dans la variable correspondante. S'il ya plusieurs lignes et que la variable correspondante est un tableau de chaînesde caractères, on retrouvera toutes les lignes correspondantes dans le tableausi celui-ci a été suffisamment dimensionné.
La variable système Adonix stat1renvoie le nombre de lignes lues (syntaxe avec affectation). Dans le cas d'unclient Unix exécutant une commande en mode local (ie @expr_c), stat1 contiendrale numéro de sortie (qui correspond souvent à un numéro d'erreur) de lacommande.
Un appel système fait à un programme interactif (par exemple un traitementde textes) doit être impérativement fait en utilisant l'une des options"!" ou "!!" de l'ordre
Il faut lancer des ordres système comptatibles avec le systèmed'exploitation de la machine visée en respectant les syntaxes propres à cesenvironnements.
Il est bon de rediriger la sortie d'erreur afin de ne pas polluer l'écran,voire de récupérer le message renvoyé par le système.
Attention : s'il faut changer de répertoire pour exécuter l'ordre système,il faudra le faire dans la même instruction
L'ordre système est lancé par un interpréteur de commande dépendant dusystème d'exploitation et de son paramétrage.
Lorsque l'ordre système est exécuté en mode interactif sur la machine locale( donc s'il commence par les caractères '!!@'), la variable [S]stat1 contientle numéro d'erreur Unix de l'ordre système exécuté si celui-ci échoue.
ERMODE(10) | expr_cou variable ne sont pas de type chaîne. |
STAT1 - ADXMAC - DIR$ - GETENV$ - FILPATH - FILINFO
Adonix X3(r) L4G |