unix_g
exécute des instructions Windows, Linux ou MacOS : résultats dans des variables
Séquence d'appel
rep = unix_g(commands) [rep, status] = unix_g(commands) [rep, status, msgerr] = unix_g(commands)
Arguments
- commands
chaîne de caractères unique : instructions à exécuter.
- rep
colonne de texte : résultats normalement affichés en sortie standard.
- status
nombre entier : code de résultat d'exécution. status==0 est retourné si aucune erreur ne s'est produite.
- msgerr
Colonne de texte : message d'erreur.
Description
unix_g()
ouvre une nouvelle session de l'interpréteur de commandes
du système d'exploitation (OS) (sh avec Linux,
cmd.exe avec MS Windows, etc..), lui envoie les instructions
commands
, attend le traitement de celles-ci, reçoit les messages
de résultats standard ou le possible message d'erreur générés lors du traitement,
et ferme la session de l'interpréteur.
Le dossier de travail initial et les variables d'environnement de la session OS ouverte sont établis comme pour host().
Les résultats standard habituellement affichés dans le terminal de l'interpréteur sont
capturés et stockés en colonne texte dans la variable rep
.
Si commands
comporte une instruction erronée,
rep
vaut "".- Si la variable de sortie
msgerr
est indiquée, le message d'erreur normalement affiché dans le terminal de l'interpréteur est capturé et enregistré dans celle-ci. Sinon, le message d'erreur est affiché dans la console Scilab. - Les instructions suivant celle erronée sont ignorées.
Les opérations effectuées par les instructions valides figurant dans
commands avant l'instruction
erronée demeurent réelles (par exemple, fichiers supprimés). Leurs
compte-rendus ou résultats d'exécution affichables sont cependant ignorés
et perdus. Les instructions multiples sont déconseillées. Elles sont souvent
plus difficiles à déboguer. |
Exemples
function d=DIR(path) path=pathconvert(path,%t,%t) if getos() == 'Windows' then d = unix_g('dir '+path) else d = unix_g('ls '+path) end endfunction DIR('SCI/etc')
Voir aussi
- unix_s — exécute des instructions Windows, Linux ou MacOS : résultats masqués (mode Silencieux)
- unix_w — exécute des instructions Windows, Linux ou MacOS : résultats dans la console Scilab
- unix_x — exécute des instructions Windows, Linux ou MacOS : résultats dans une fenêtre d'information
- host — exécute une commande Windows, Linux, ou MacOS
- getos — donne le nom et la version du système d'exploitation
- setenv — fixe la valeur d'une variable d'environnement
- powershell — executes a command with the Windows powershell interpreter (Windows only)
- Liste de codes de sortie MS Windows
Report an issue | ||
<< setenv | OS_commands | unix_s >> |