GET_FILESYSTEM

Fonction de script : Récupère différentes valeurs du système de fichiers d'une machine à partir du chemin indiqué.

Syntaxe

GET_FILESYSTEM ([Host],[Path],File System Value[,Unit][, include sub directories][,Login object])

Syntaxe

Description / format

Host

Nom de l'agent qui s'exécute sur la machine d'où les informations doivent être récupérées.

Format: Nom AE, littéral de script ou variable de script

Le dernier agent utilisé avec la fonction de script GET_FILESYSTEM est réutilisé si le nom de l'hôte n'est pas spécifié. Les valeurs récupérées lors de la précédente exécution sont affichées.

Path

Indique les fichiers ou systèmes de fichiers pour lesquels les informations doivent être récupérées.

Selon le système, vous pouvez nommer ici des fichiers, des lecteurs, des volumes, des chemins, des groupes de données de génération, etc. Les caractères génériques "*" ou "?" peuvent être utilisés. "*" indique un nombre quelconque de caractères, "?" représente un caractère exactement.

Notez que Windows n'autorise que les caractères génériques "*" et "?" dans les noms de fichiers. Vous ne pouvez pas les utiliser pour les répertoires dans le chemin.

Les caractères * et ? sont toujours utilisés comme caractères génériques. Notez que vous ne pouvez pas les utiliser pour définir des fichiers spécifiques dont le nom contient ces caractères.

Format: Nom AE, littéral de script ou variable de script.

Le dernier chemin utilisé avec la fonction de script GET_FILESYSTEM est utilisé si le nom du chemin n'est pas spécifié. Les valeurs récuprées lors de l'exécution précédente sont utilisées.

Terminez toujours la saisie du chemin par une barre oblique inversée "\*" sous Windows. Utilisez les fonctions de script pour définir les actions à entreprendre en cas d'erreur (exemple : envoyer un message d'erreur si le chemin n'existe pas). Pour plus d'informations, voir Éléments de script pour la gestion des erreurs

Exemple : C:\AUTOMIC\*

Le préfixe "VOL=" est requis si un ou plusieurs volumes sont idiqués.

Exemple : "VOL=ALG*1" fournit des informations sur tous les volumes commençant par "ALG" et finissant par "1". Tous les autres caractères peuvent se trouver entre. Dans notre exemple, il s'agit exactement de quatre caractères, car le nom d'un volume contient 8 caractères.

Pour nommer les groupes de données de génération, le caractère générique "*" doit être utilisé uniquement entre parenthèses.

File System Value

Valeur du système de fichiers. Cette fonction de script peut récupérer les informations suivantes :

PATH_SPACE_ALLOCATED : mémoire ou espace disque alloués
PATH_SPACE_RELEASE : espace mémoire pouvant être libéré (uniquement BS2000)
PATH_SPACE_USED : volume total occupé par les fichiers du chemin indiqué
PATH_SPACE_UNUSED : espace mémoire ou espace disque inutilisés (uniquement BS2000)
PATH_FILE_COUNT : nombre de fichiers
PATH_FOLDER_COUNT : nombre de dossiers (uniquement Windows, UNIX et OS/400)
FILESYSTEM_SPACE_TOTAL : capacité de stockage du disque (uniquement Windows et OS/400)
FILESYSTEM_SPACE_USED : espace mémoire utilisé sur le disque (uniquement Windows et OS/400)
FILESYSTEM_SPACE_FREE : espace mémoire disponible sur le volume (z/OS, OS/400) ou le disque (Windows)

Format: Nom AE, littéral de script ou variable de script

Unit

On peut indiquer sous quelle forme la valeur du système de fichiers doit être renvoyée.

Si aucune unité de mesure UNIT n'est indiquée, le code retour est défini par l'hôte (valeur par défaut). Par exemple, une machine BS2000 renvoie la valeur "1" pour une page PAM. Cela correspond à 2 048 octets.

Si une unité de mesure est indiquée, le code retour est converti comme spécifié.
Valeurs autorisées : "Bytes", "KB", "MB", "GB" or "TB".

Format: Nom AE, littéral de script ou variable de script

La valeur par défaut est utilisée si une unité de mesure non valide est saisie. La fonction de script ne s'interrompt donc pas si vous utilisez :ON_ERROR.

Include sub-directories

Paramètre indiquant si les sous-répertoires du chemin spécifié doivent être inclus.

Valeurs autorisées : "Y" (valeur par défaut) et "N"

Cette option n'est disponible que pour les agents VMS, UNIX et Windows.

Notez qu'activer cette option diminue les performances du système AE.

Login object Nom de l'objet Login précédemment défini; permet le transfert des données de connexion pour l'objet événement du système de fichiers (optionnel).

Codes retour

Résultat pour la valeur recherchée dans le système de fichiers
"0 » : Une erreur est survenue lors de la récupération de la valeur du système de fichiers (exception :PATH_FILE_COUNT, voir ci-dessous)

Cet élément de script ne peut être utilisé qu'avec des agents de système d'exploitation (Windows, UNIX, VMS, z/OS, OS/400, NSK et BS2000).

Le code de retour de cette fonction est zéro si une erreur survient lors de l'accès aux informations sur le système de fichiers (telle que chemin introuvable).

Conseil : Utilisez l'instruction de script :ON_ERROR pour définir l'action à entreprendre en cas d'erreur. Pour plus d'informations, voir Éléments de script pour la gestion des erreurs.

Si vous utilisez cette fonction de script avec PATH_FILE_COUNT, la fonction peut renvoyer 0 si le répertoire ne contient aucun fichier. Vous devez donc utiliser en plus les fonctions de script pour le traitement des erreurs (par ex. SYS_LAST_ERR_NR). Les erreurs (telle qu'un hôte inactif) peuvent ainsi être détectées et il est possible de différencier si le code retour 0 se rapporte au nombre de fichiers ou à une erreur.

Dans z/OS, la taille du jeu de données renvoyée (PATH_SPACE_USED) peut s'avérer inexacte si le jeu de données se trouve sur des volumes EAV (Extended Address Volumes).

 Le manque de droits d'accès aux dossiers du système (information de volume système, Windows) retourne également un code retour 0.

L'instruction de script écrit toutes les transactions ouvertes du script dans la base de données AE. Pour plus d'informations, voir Traitement du script.

Paramètres optionnels Host (hôte) et Path (chemin)

Exemples

Lorsqu'un événement FILE se produit, la fonction de script GET_FILESYSTEM peut être utilisée pour récupérer des informations sur le système de fichiers, la mémoire ou l'espace disque. Toutes les informations sont transférées à l'agent. Chaque élément peut être interrogé séparément en indiquant la valeur du système de fichiers. Dans ce cas, la fonction de script est exécutée sans indiquer d'hôte ni de chemin, car ces paramètres sont déjà définis dans l'onglet Détail de l'événement.

GET_FILESYSTEM peut être utilisée dans les onglets Traitement de tous les objets exécutables (tels que les workflows). Il faut toujours indiquer un hôte et un chemin lors de l'exécution de cette fonction de script. Ces paramètres ne peuvent être omis que si GET_FILESYSTEM a déjà été exécuté une fois dans le script. Dans ce cas la valeur retournée est la même que celle de l'exécution précédente.

:SET &NumberFiles# = GET_FILESYSTEM(WIN01, "C:\Temp", PATH_FILE_COUNT)
!several script lines

:
SET &NumberFiles# = GET_FILESYSTEM(,, PATH_FILE_COUNT)
!several script lines

:
SET &NumberFiles# = GET_FILESYSTEM(WIN01, "C:\Temp", PATH_FILE_COUNT)

La première exécution de GET_FILESYSTEM renvoie le nombre de fichiers dans le répertoire C:\Temp (par ex. 50). Si certains de ces fichiers on été supprimés, cette fonction de script continuera à renvoyer la valeur 50. Finalement, la troisième exécution recalcule les valeurs du système de fichiers et renvoie un nombre de fichiers inférieur.

Considérations spécifiques à la plateforme

Les valeurs du système de fichier et informations suivantes ne s'appliquent qu'à certaines plateformes.

Exemples

Dans l'exemple suivant, la fonction de script GET_FILESYSTEM est utilisée pour récupérer le nombre de fichiers existants et pour envoyer le message correspondant. Il s'agit d'un extrait du script d'un événement, les deux premiers paramètres n'étant pas spécifiés.

:SET &NUMBER# = GET_FILESYSTEM(,,PATH_FILE_COUNT)  
:
SEND_MSG "BROWN","IT","&NUMBER# files are available for processing."

Dans l'exemple suivant, la fonction de script GET_FILESYSTEM est utilisée dans le script d'un job. Toutes les informations disponibles sur le disque sont récupérées et écrites dans le rapport d'activation.

: SET &E1# = GET_FILESYSTEM(WIN01,"E:\",FILESYSTEM_SPACE_TOTAL,MB)
:
SET &E2# = GET_FILESYSTEM(,,FILESYSTEM_SPACE_USED,MB)
:
SET &E3# = GET_FILESYSTEM(,,FILESYSTEM_SPACE_FREE,MB)  
:
PRINT "Memory capacity of the drive: &E1# MB"
:
PRINT "Used drive space: &E2# MB"
:
PRINT "Available space: &E3# MB"  

Les exemples suivants illustrent l'utilisation de la fonction de script avec GDG :

!Number of file generations of the group TEST.XXX
:
SET &FILENAME# = GET_FILESYSTEM("MVSHOST", "TEST.XXX(*)", PATH_FILE_COUNT)

!Sum of the space used by the current generation
:
SET &SPACE# = GET_FILESYSTEM("MVSHOST", "TEST.XXX(0)", PATH_SPACE_USED)

Voir aussi :

voiraussi

Fonctions de script pour la gestion des événements

Éléments de script pour la gestion des erreurs