FTP possède une caractéristique utile pour automatiser le transfert de données : les fichiers INPUT et OUTPUT. L'instruction FTP lit (par défaut) dans le fichier INPUT (s'il existe) et exécute toutes les instructions qu'il contient. De la même manière, elle envoie le journal des instructions exécutées et de leur état
FTP automatisé
(correctement exécutées
ou non) au fichier OUTPUT. A l’aide de
ces deux fichiers, on peut écrire un
script qui automatise le transfert de
données à partir d’un système à distance.
A titre d’exemple, la figure 1
montre un programme CL qui joue le
rôle de programme driver pour la fonction
FTP auto. Il crée un fichier temporaire
appelé FTPSRC avec deux
membres – FTPMBR et FTPLOG – qui
sont envoyés par écrasement dans les
fichiers INPUT et OUTPUT (que la
commande FTP utilisera).
Le fichier INPUT (qui a été écrasé)
est peuplé par un programme RPG appelé
à partir du CL driver. Ce programme
RPG écrit toutes les commandes
FTP requises dans le fichier INPUT,
y compris les champs ID et mot
de passe utilisateur fictifs nécessaires
pour se connecter à la machine locale
(nous reviendrons sur ce point plus
loin).
La figure 2 montre un programme
RPG appelé à partir du programme CL
driver (figure 1) et qui écrit les commandes
FTP requises dans le fichier INPUT.
(A noter que vous devez créer le
fichier FTPSRC en utilisant la commande
illustrée dans le programme CL
de la figure 1 avant de pouvoir créer le
programme RPG. C’est nécessaire
pour des besoins de compilation.) A la
fin du programme, le fichier INPUT
contient l’ensemble des instructions
FTP à exécuter. La figure 3 montre un
exemple de fichier INPUT.
L’instruction FTP suivante dans le
programme CL driver (figure 1) lit dans
le fichier INPUT et commence à exécuter
les instructions qu’il contient. Un
inconvénient que vous remarquerez
sûrement est le fait que nous n’avons
pas la souplesse de nous connecter à
une machine ; il nous faudrait coder en
dur l’adresse IP d’une machine distante.
L’instruction FTP RMTSYS
(LOOPBACK) permet de contourner
ce problème. Elle ne fait rien d’autre
que de connecter à la machine locale
elle-même (c’est-à -dire connecter à l’IP
127.0.0.1 en utilisant le port 21).
L’objet de cette opération est simplement
d’entrer dans le mode FTP. Vous
pourrez ensuite indiquer un ID et mot
de passe utilisateur fictif (à l’intérieur
du fichier INPUT) qui sera rejeté, mais
notre objectif qui était d’entrer en
mode FTP a été atteint. A partir de là ,
nous pouvons ouvrir une connexion
vers toute machine distante et autant
de fois que nécessaire. L’adresse du
système à distance peut aussi être acceptée
comme un paramètre et il n’est
pas nécessaire de la coder en dur.
A noter qu’il faut apporter
quelques changements au programme
RPG (figure 2) pour l’adapter à l’environnement de l’utilisateur. En fait,
vous devez changer l’instruction
EVAL SRCDTA = _OPEN XXX.XXX.XX.XX ‘
pour refléter l’adresse/nom IP de
l’iSeries à distance. Vous devez modifier
l’instruction
EVAL SRCDTA = ‘USER ANONYMOUS PASSWORD’
pour amener l’ID et mot de passe utilisateur
réels de la machine à distance.
Enfin, vous devez modifier
EVAL SRCDTA = ‘CD FTPFILES’
et
EVAL SRCDTA = ‘LCD TEST’
pour refléter le répertoire à distance à
partir duquel l’utilisateur veut transférer
des données et le répertoire local
dans lequel il faut les transférer.
L’instruction FTP dirige son journal
et l’état des différentes instructions
FTP exécutées vers le fichier OUTPUT.
La figure 4 montre un fichier OUTPUT
type. Vous pouvez utiliser le fichier
OUTPUT pour suivre l’état de l’exécution,
et automatiser la suite du traitement
en vous fondant sur lui.
Vous pouvez maintenant programmer
le programme driver (via le scheduler
OS/400) pour qu’il fonctionne à
une certaine heure. Le processus FTP
est automatisé !
Téléchargez cette ressource
Sécuriser Microsoft 365 avec une approche Zero-Trust
Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Souveraineté des données : bâtir un stockage hybride adapté à l’ère de l’IA
- Secteur public : l’IA accélère la modernisation des infrastructures
- De l’inventaire à l’action : l’Asset Management au service d’un Numérique plus responsable
- IA et bureaucratie : la complexité qui grève les projets
Articles les + lus
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
À la une de la chaîne Tech
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
