Altova FlowForce Server 2024 Advanced Edition

Chemin complet : /system/shell/commandline

 

Exécute une commande shell ou un fichier batch.

 

Pour que les tâches FlowForce Server lisent des variables d'environnement, elles doivent être définies dans des scripts qui doivent être exécutés avec la fonction /system/shell/commandline. Veuillez noter que FlowForce Server exécute un shell non-interactif, ce qui signifie que tous les comportements spécifiques aux shells interactifs ne sont pas applicables (comme l'exécution de .profile ou .bashrc sur Linux).

 

Si le code d'exit provenant de la dernière commande shell est autre que "0", le résultat sera le suivant :

 

Si le paramètre Abandon sur erreur est true (défaut), cette fonction abandonne l'exécution. Dans ce cas, vous pouvez gérer l'erreur aux moyens des blocs protégés (voir Étapes de la gestion d'erreurs).

Si le paramètre Abandon sur erreur estfalse, la fonction retourne le résultat de la commande shell, y compris la sortie standard, l'erreur standard et le code exit.

 

Si le code d'exit provenant de la dernière commande est "0" (succès), la fonction retourne le résultat de la dernière commande shell, en tant que type générique. Pour gérer la valeur retournée par cette fonction dans une autre étape ou tâche, procédez comme suit :

 

1. Nommer le résultat retourné en saisissant une valeur dans le champ de saisie Attribuer ce résultat d'étape à (par exemple, "myresult").

2 Créer une nouvelle étape qui exécute soit la fonction compute ou compute-string, dépendant de quel type de renvoi vous avez besoin.

3. Saisir une expression à la fonction d’argument qui obtient la partie désirée du résultat générique. Par exemple, saisir l'expression stdout(myresult)pour obtenir la sortie standard du résultat en tant que stream, et stderr(myresult) pour obtenir le stream de sortie d'erreur standard. Pour obtenir les mêmes valeurs en tant que string, utiliser content(stdout(myresult))et content(stderr(myresult)), respectivement.

 

Veuillez noter que la fonction stdout (et la tâche) échouera si la commande shell ne retourne pas une sortie standard. De même, la fonction stderr échouera s'il n'y a pas d'erreur de standard.

 

Voir aussi Gérer les types de données en étapes et Fonctions Résultat d'étape.

 

Paramètres

Nom

Type

Description

Commande

string

Saisir la commande shell à exécuter.

Abandonner sur erreur

booléen

Paramètre optionnel. Ce paramètre détermine la sortie de la tâche dans laquelle une erreur est apparue. Si le paramètre Abandon sur erreur est true, l’exécution de la tâche sera terminée. Si le paramètre Abandon sur erreur est false, FlowForce Server ignorera les erreurs et poursuivra son exécution de la tâche. La valeur par défaut est true.

Répertoire de travail

string en tant répertoire

Spécifie le répertoire de travail de la tâche (par exemple, c:\somedirectory). Si des chemins relatifs sont utilisés, ils seront résolus par rapport au répertoire de travail.

 

Exemples

La tâche suivante exécute un fichier batch Windows appelé DoTransform.bat. En partant du principe que DoTransform.bat nécessite un fichier XML en tant qu'entrée, le fichier d'entrée XML doit être copié dans le répertoire de travail. Dans cet exemple, le répertoire de travail est C:\codegen\xslt2.

fs_commandline_01

La tâche suivante appelle RaptorXML Server pour exécuter une transformation XSLT avec des paramètres. On part du principe que la variable d'environnement PATH contient le chemin vers le programme d'exécution RaptorXML Server, par exemple C:\Program Files (x86)\Altova\RaptorXMLServer2024\bin. Pour plus d'informations concernant RaptorXML Server, voir https://www.altova.com/raptorxml.

RaptorCMDline2

Pour un exemple étape par étape qui gère la sortie retournée par la ligne de commande, voir Vérifier l'existence d'un chemin.

© 2017-2023 Altova GmbH