GET_FILESYSTEM

Verwenden Sie die Script-Funktion GET_FILESYSTEM, um mehrere Werte aus einem Dateisystem eines Computers abzurufen, beginnend mit einem definierten Pfad. Dieses Script-Element ist nur für Betriebssystem-Agents wie Windows, UNIX, VMS, z/OS, OS/400, NSK und BS2000 verfügbar.

Wichtig!

  • Stellen Sie sicher, dass Sie Zugriffsrechte auf Systemordner (Systemvolumeninformationen, Windows) haben. Fehlende Rechte führen zu Code 0.
  • Diese Script-Anweisung bewirkt, dass alle offenen Transaktionen des Scripts in die AE-Datenbank geschrieben werden. Weitere Informationen finden Sie unter Script-Verarbeitung

Syntax

GET_FILESYSTEM ([Host],[Pfad],Dateisystemwert[,Einheit][, Unterverzeichnisse einbeziehen][,Login-Objekt])

Parameter

  • GET_FILESYSTEM
    Ruft mehrere Werte aus einem Dateisystem eines Hosts ab

  • Host
    (Optional) Name des Agenten, der auf dem Host ausgeführt wird, dessen Informationen abgerufen werden sollen
    Format: AE Name, Script-Literal oder Script-Variable
    Tip: Wenn Sie den Hostnamen nicht angeben, wird der Agent verwendet, den Sie zuletzt mit der GET_FILESYSTEM-Script-Funktion verwendet haben. Statt die Werte vom Agenten erneut zu abrufen, werden die Ergebniswerte aus dem vorherigen Aufruf verwendet. Dadurch können Sie die Leistung erhöhen, weil die Daten bereits verfügbar sind. Weitere Informationen finden Sie in den Beispielen unter Verwendung der optionalen Parameter Host und Path

  • Pfad
    (Optional) Beschreibung der Dateien oder Dateisysteme, deren Informationen ausgegeben werden sollen.
    Abhängig vom jeweiligen System können Sie Dateien, Laufwerke, Datenträger, Pfade, Generierungsdatengruppen oder andere angeben. Es können die Platzhalterzeichen * oder ? verwendet werden. * steht dabei für beliebig viele, ? für genau ein Zeichen.
    Wichtig! (Windows) Sie können das Platzhalterzeichen * und ? für die Dateinamen. Sie können nicht für Verzeichnisse innerhalb des Pfades verwendet werden.
    Format: AE-Name, Script-Literal oder Script-Variablen
    Hinweise:

    • Beenden Sie Pfadspezifikationen unter Windows mit einem Backslash und dem Platzhalterzeichen *.

      Beispiel: C:\AUTOMIC\*

      Verwenden Sie Script-Funktionen, um Aktionen zu definieren, die im Fehlerfall durchgeführt werden sollen, z. B. das Senden einer Fehlermeldung, wenn der Pfad nicht vorhanden ist. Weitere Informationen finden Sie unter Script-Elemente zur Fehlerbehandlung

    • Das Präfix VOL= ist erforderlich, wenn Sie ein oder mehrere Datenträger festlegen.

      Beispiel: VOL=ALG*1 gibt Informationen über alle Datenträger zurück, deren Name mit der Buchstabenkombination ALG beginnt und mit 1 endet. Dazwischen können sich beliebig viele Zeichen befinden. Unser Beispiel ist auf 4 beliebige Zeichen begrenzt, da die der vollständige Name eines Volumens aus 8 Zeichen besteht.

    • Wenn Sie Generierungsdatengruppen benennen, schließen Sie das Zeichen * in Klammern ein. Weitere Informationen finden Sie unter Unterstützung von GDG (Generation Data Groups)
  • Dateisystemwert
    Sie können die folgenden Informationen abrufen:

    • PATH_SPACE_ALLOCATED
      Zugewiesener Speicherplatz oder Festplattenspeicher
    • PATH_SPACE_RELEASE
      (BS2000) Freisetzbarer Speicher
    • PATH_SPACE_USED
      Summe der Dateigrößen im angegebenen Pfad
      (z/OS) Die zurückgegebene Datensatzgröße ist möglicherweise ungenau, wenn sich der Datensatz auf EAV (Extended Address Volumes) befindet.
    • PATH_SPACE_UNUSED
      (BS2000) Nicht verwendeter Arbeitsspeicher oder Festplattenspeicher
    • PATH_FILE_COUNT
      Anzahl der Dateien
      Tipp: Wenn Sie PATH_FILE_COUNT verwenden, kann diese Script-Funktion 0 zurückgeben, wenn das Verzeichnis keine Dateien enthält. Verwenden Sie daher zusätzlich die Script-Funktionen für die Fehlerbehandlung, z. B. SYS_LAST_ERR_NR. Fehler, z. B. Host ist nicht aktiv, können erkannt werden und es kann unterschieden werden, ob sich der Rückgabewert 0 auf die Dateinummer oder einen Fehler bezieht.
    • PATH_FOLDER_COUNT
      (Windows, UNIX und OS/400) Anzahl an Ordnern
    • FILESYSTEM_SPACE_TOTAL
      (Windows und OS/400) Gesamter Arbeitsspeicher der Festplatte
    • FILESYSTEM_SPACE_USED
      (Windows und OS/400) Verwendeter Arbeitsspeicher
    • FILESYSTEM_SPACE_FREE
      (z/OS, OS/400) Freier Arbeitsspeicher des Datenträgers
      (Windows) Freier Arbeitsspeicher des Laufwerks

    Format: AE-Name, Script-Literal oder Script-Variable

  • Einheit
    (Optional) Geben Sie das Format an, in dem ein Dateisystemwert zurückgegeben werden soll.
    Rückgabewert: Wenn dieser Parameter nicht definiert ist, wird der Rückgabewert durch den Host festgelegt (Standard). Beispiel: Ein BS2000-Computer gibt den Wert 1 für 1 PAM-Seite zurück. Dieser Wert entspricht 2048 Bytes.
    Wenn dieser Parameter definiert ist, wird der Rückgabewert im angegebenen Format berechnet. Zulässige Formate sind Byte, KB, MB, GB und TB.

    Format: AE Name, Script-Literal oder Script-Variable
    Hinweis: Wenn Sie einen ungültigen Wert für die Einheit definieren, wird der Standardwert verwendet. Aus diesem Grund wird diese Script-Funktion nicht abgebrochen, wenn Sie die Script-Anweisung :ON_ERROR verwenden. Weitere Informationen finden Sie unter:ON_ERROR.

  • Unterverzeichnisse einbeziehen
    (Optional) Gibt an, ob die Unterverzeichnisse des angegebenen Pfads durchsucht werden sollen. Der Parameter ist nur für VMS-, UNIX- und Windows-Agenten wirksam.
    Zulässige Werte: Y (Standard) und N
    Achtung! Die Aktivierung dieser Option kann die Performance Ihres AE-Systems beeinträchtigen.

  • Login-Objekt
    (Optional) Name des vordefinierten Anmeldeobjekts, das die Anmeldedaten für das FILE Event-Objekt überträgt.

Rückgabewerte

Die Script-Funktion zeigt das Ergebnis des gesuchten Dateisystemwerts in ihrem Rückgabewert an.

  • 0
    Beim Abrufen des Dateisystemwerts ist ein Fehler aufgetreten. Beispielsweise wenn der Pfad nicht gefunden wurde. Eine Ausnahme ist PATH_FILE_COUNT, siehe Parameterbeschreibung.

Tipp: Verwenden Sie die Script-Anweisung :ON_ERROR, um Aktionen zu definieren, die im Falle eines Fehlers ausgeführt werden sollten. Weitere Informationen finden Sie unter Script-Elemente zur Fehlerbehandlung.

Verwendung der optionalen Parameter Host und Path

Beispiel 1

Wenn ein FILE Event auftritt, können Sie die Script-Funktion GET_FILESYSTEM verwenden, um Informationen über das Dateisystem, den Arbeitsspeicher und den Speicherplatz abzurufen. Alle Informationen werden vom Agenten empfangen und Sie können jedes Element separat abfragen und daraus den Dateisystemwert ermitteln. In diesem Fall verwenden Sie diese Script-Funktion ohne die Parameter Host und Path, da sie bereits im Bereich Details des Ereignisses definiert sind.

Beispiel 2

Sie können GET_FILESYSTEM auf den Prozessseiten aller ausführbaren Objekte verwenden, wie zum Beispiel Workflows. Weitere Informationen finden Sie unter Prozess-Seiten und Objekttypen

Host und Path sind immer erforderlich, außer wenn GET_FILESYSTEM im Skript bereits verwendet wurde. In diesem Fall ist der zurückgegebene Wert derselbe wie im letzten Aufruf.

Das Beispiel zeigt, dass der erste Aufruf von GET_FILESYSTEM die Anzahl der Dateien liefert, die im Verzeichnis C:\Temp gefunden wurden (z. B. 50). Wenn einige dieser Dateien jetzt gelöscht werden, gibt diese Script-Funktion immer noch den Wert 50 zurück, da Sie Host und Path nicht angeben. Der dritte Aufruf schließlich berechnet den Dateisystemwert neu und liefert eine reduzierte Anzahl von Dateien.

: SET &NumberFiles# = GET_FILESYSTEM (WIN01, "C:\Temp" , PATH_FILE_COUNT)
!mehrere Script-Zeilen

:
SET &NumberFolders# = GET_FILESYSTEM (,, PATH_FOLDER_COUNT)
!mehrere Script-Zeilen

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

Plattformspezifische Informationen

Die folgenden Werte und Informationen zum Dateisystem gelten nur für bestimmte Plattformen.

  • BS2000
    Kann sich nur in BS2000, zugeordneter und verwendeter Speicherplatz unterscheiden. Es können beispielsweise 1000 PAM-Seiten reserviert werden. Der eigentliche Dateiinhalt kann jedoch immer noch nur 100 PAM-Seiten betragen.

  • OS/400
    Geben Sie immer eine Bibliothek und eine Datei an, um gültige Dateisystemwerte zu erhalten.

  • z/OS

    • PATH_SPACE_ALLOCATED
      Der zugewiesene Festplattenspeicher in z/OS kann nicht abgerufen werden. Gibt den belegten Festplattenspeicher zurück.
    • PATH_SPACE_USED
      Verwendeter Festplattenspeicher
    • PATH_SPACE_UNUSED
      Dieser Parameter ist immer null, weil der Wert die Differenz zwischen PATH_SPACE_ALLOCATED und PATH_SPACE_USED ist.
    Wenn ein GDG-Name angegeben wird, ruft die Script-Funktion folgende Dateisystemwerte ab: PATH_SPACE_USED und PATH_FILE_COUNT.

  • Andere Betriebssysteme wie UNIX und VMS

    • PATH_FILE_COUNT
      Anzahl der Dateien
    • PATH_FOLDER_COUNT
      Anzahl der Ordner
    • PATH_SPACE_USED
      Summe der Dateigrößen im angegebenen Pfad
    • PATH_SPACE_TOTAL
      Gibt dieselben Ergebnisse zurück wie PATH_SPACE_USED und PATH_SPACE_ALLOCATED.

Beispiele

Das folgende Beispiel verwendet die Script-Funktion GET_FILESYSTEM, um die Anzahl aller vorhandenen Dateien abzurufen und eine entsprechende Meldung zu senden. Das Beispiel ist eine Zusammenfassung eines Scripts, das in einem Ereignis verwendet wird, das Sie kennen, weil die Parameter Host und Path nicht angegeben sind.

: SET &NUMBER# = GET_FILESYSTEM (,,PATH_FILE_COUNT)    
:
SEND_MSG "BROWN" , "IT" , "&NUMBER# Dateien stehen für die Verarbeitung zur Verfügung."

Das nächste Beispiel verwendet die Script-Funktion GET_FILESYSTEM auf der Seite Prozess eines Jobs. Es werden alle verfügbaren Informationen zum Laufwerk abgerufen und im Aktivierungsreport ausgegeben.

: 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 "Speicherkapazität des Laufwerks: &E1# MB"
:
PRINT "Verwendeter Festplattenspeicher: &E2# MB"
:
PRINT "Verfügbarer Speicher: &E3# MB"    

Die folgenden Beispiele zeigen, wie Sie diese Script-Funktion mit GDG verwenden können:

!Anzahl der Dateigenerierungen der Gruppe TEST.XXX
:
SET &FILENAME# = GET_FILESYSTEM ( "MVSHOST" , "TEST.XXX(*)" , PATH_FILE_COUNT)

!Summe des von der aktuellen Generation verwenden Speicherplatzes
:
SET &SPACE# = GET_FILESYSTEM ( "MVSHOST" , "TEST.XXX(0)" , PATH_SPACE_USED)

Siehe auch: