Rubrique précédente: Exemple de script UNIX : opérateur de script UNIXGetInfoRubrique suivante: Exemple de VBScript : Informations de script WinGetInfo


Script (UNIX)

L'exemple de script UNIX crée deux champs indexés, HostList et OSList dans l'ensemble de données d'opérateur UnixGetInfo. Il lit le fichier source ligne par ligne et affecte des noms d'hôte ($host) à des valeurs indexées dans des champs HostList séquentiels et des systèmes d'exploitation ($opsys), à des valeurs indexées dans des champs OSList numérotés en séquence. Il commence par 0 et se termine à un numéro inférieur au nombre de lignes lues dans le fichier source.

Les variables de paramètre de script Shell UNIX $1, $2, etc. sont définies pour la première entrée, la deuxième, etc. de la zone d'entrée Paramètres de l'opérateur Exécuter le script appelant. Dans ce cas, seul un paramètre est transféré, puis utilisé pour définir SourceFile. Le nombre de lignes lues est affecté à la variable de l'ensemble de données d'opérateur nommé NumRowsRead. La ligne sleep 30 vise uniquement à mettre l'opérateur en pause et à permettre à l'utilisateur d'examiner en 30 secondes les dossiers et les fichiers créés à l'emplacement de C2OSVD. Cette ligne ne peut pas être incluse dans un script de production.

#!/bin/ksh
SourceFile=$1
#known doit lire 2 variables, l'hôte et le système d'exploitation
mkdir $C2OSVD/HostList
mkdir $C2OSVD/OSList
integer counter=0
while read host opsys; do
	echo -n $host > $C2OSVD/HostList/${counter}
	echo -n $opsys > $C2OSVD/OSList/${counter}
	counter=$counter+1
done < $SourceFile
echo -n $counter > $C2OSVD/NumRowsRead
sleep 30
exit 0