
Le bloc fonctionnel FS_SHELL exécute une ou plusieurs commandes distantes dans un shell interactif.
Attention: Les commandes système peuvent menacer ou endommager le système distant. De plus, des fichiers existants peuvent être écrasés sans avertissement.
Le système de fichiers doit avoir été initialisé au préalable à l'aide de FS_INIT. Toutes les opérations s'effectuent de manière asynchrone par support de stockage créé.
Sur un front montant, la commande spécifiée est exécutée.
Définir l'appareil à partir duquel les fichiers doivent être accessibles. L'appareil est utilisé par projet et peut être géré dans le menu contextuel sous Projet Stockage Externe.
Indique le chemin vers le répertoire sur le support de stockage. Le chemin correspond à un chemin de fichier Unix au format UTF-8, si celui-ci est pris en charge. Le chemin est représenté comme suit:
Dossier/Sous-dossier
L'utilisation d'un chemin est facultative. Si celui-ci est défini, le changement vers ce répertoire doit réussir, sinon la commande à exécuter ne sera pas exécutée.
Définir toutes les commandes à exécuter. Toutes les commandes doivent être terminées par une fin de ligne. Par exemple : "ls\n". Si aucune fin de ligne n'est utilisée, la commande ne sera probablement pas exécutée. Les commandes sont exécutées ligne par ligne après l'accusé de réception du serveur.
Après l'exécution de toutes les commandes, un "exit\n" doit être envoyé à la fin pour terminer immédiatement la connexion et retourner les valeurs. Aucun autre commande ne doit être envoyée ensuite, sinon la sortie ERROR sera définie sur TRUE.
Remarque: Si la connexion est terminée de manière inattendue et qu'une commande n'a pas été envoyée, la sortie ERROR sera définie sur TRUE.
Définir le type de console (Pseudo-Terminal). Pour certains appareils, ce paramètre est obligatoire. Exemples : "vanilla", "exec", "vt100", "vt102", "ansi", "xterm" etc. Si aucune valeur n'est définie, "vanilla" est utilisé.
La valeur "exec" exécute la requête via une commande SSH du système d'exploitation. Ainsi, des méthodes plus modernes sont utilisées. Cependant, cette méthode est quelque peu inefficace. L'entrée ENV est définie avant la connexion, elle peut donc être ignorée. L'entrée SIZE est ignorée avec cette méthode.
Si des paramètres SSH supplémentaires doivent être transmis, ceux-ci peuvent être ajoutés chacun sur une nouvelle ligne après "exec". Les paramètres sont sensibles à la casse et sont spécifiés comme dans l'exemple suivant. Cet exemple active l'algorithme RSA pour les anciens appareils.
exec
HostKeyAlgorithms=+ssh-rsa
PubkeyAcceptedAlgorithms=+ssh-rsa
Les paramètres suivants sont disponibles:
| Paramètres SSH pour exec | Valeur d'exemple |
|---|---|
| KexAlgorithms | +diffie-hellman-group1-sha1 |
| Ciphers | +aes128-cbc |
| HostKeyAlgorithms | +ssh-rsa |
| PubkeyAcceptedAlgorithms | +ssh-rsa |
| ConnectTimeout | 10 |
| ServerAliveInterval | 30 |
| ServerAliveCountMax | 3 |
Remarque: Pour plus de détails, voir la documentation externe : https://linux.die.net/man/5/ssh_config (Anglais)
Définir les variables d'environnement actives. Pour spécifier plusieurs variables, une peut être définie par ligne. Exemple:
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
Définir la taille du terminal. Par défaut, celle-ci est indiquée en caractères, mais peut également être définie en pixels. Par exemple : "80x25" ou "640x480px". Si aucune valeur n'est définie, "80x25" est utilisé.
Définir un délai d'attente pour la réception de données par commande au format T#. Si aucun délai d'attente n'est défini, T#150ms est utilisé. Si cette valeur n'est pas suffisamment élevée, plusieurs commandes seront probablement exécutées pendant la sortie des données.
Définir un délai d'attente au format T# pour l'exécution de toutes les commandes. Une fois atteint, la connexion est terminée et la valeur est retournée. ERROR est alors défini sur TRUE. Le délai d'attente est évalué après l'établissement de la connexion et l'authentification. Si l'entrée PTY a été définie sur "exec", le temps d'exécution est évalué sur toute la période. Si aucun délai d'attente n'est défini, T#300s est utilisé.
La sortie renvoie un impulsions en cas de succès pour effectuer l'opération suivante. L'impulsion se produit à la fin du processus, même si une erreur s'est produite.
Renvoie le retour de la commande en cas d'exécution réussie. La valeur est stockée pour une utilisation ultérieure.
Remarque: Veuillez noter que la console formate la sortie. Cela peut également contenir des caractères de contrôle ou des données binaires.
Renvoie le retour de la commande en cas d'exécution erronée. Appelé STDERR pour SSH. La valeur est stockée pour une utilisation ultérieure.
Remarque: Veuillez noter que la console formate la sortie. Cela peut également contenir des caractères de contrôle ou des données binaires.
Renvoie en cas d'erreur un texte avec un message d'erreur. Celui-ci est FALSE, si aucune erreur ne s'est produite. L'état est stocké pour une utilisation ultérieure.
Causes possibles: