Mit dieser Anweisung extrahieren Sie eine oder mehrere Dateien aus dem aktuell geöffneten ZIP-Archiv.
EXTRACT-FILE | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FILE-NAME = *ALL
Alle im Archiv enthaltenen Dateien werden extrahiert.
FILE-NAME = <composed-name 1..98 with-under with-wild(132)>
Die angegebene Datei wird aus dem ZIP-Archiv extrahiert. Bei Verwendung von Musterzeichen werden alle Dateien, die der Musterzeichenfolge entsprechen, aus dem ZIP-Archiv extrahiert.
FILE-NAME = <c-string 1..1024 with-low>
Alle Dateien, die der angegebenen Zeichenfolge entsprechen (Musterzeichen entsprechend den SDF-Regeln für Auswahlangaben sind erlaubt (siehe SDF-Metasyntax, Handbuch „Kommandos“ [2]), werden aus dem ZIP-Archiv extrahiert. Die Angabe als C-String ist zu verwenden, wenn das Archiv nicht in einem BS2000-System erstellt wurde und die betroffenen Dateinamen nicht BS2000-konform sind (z.B. Groß-/Kleinschreibung).
FILE-NAME = *PATH-NAME(...)
Die angegebene Datei wird aus dem Container extrahiert. Der Operand interpretiert Zeichen wie Schrägstrich, Sternchen, eckige Klammern und andere nicht als Platzhalter, sondern als Teil des Dateinamens. Verwenden Sie diesen Operanden, um einen relativen Pfadnamen innerhalb des ZIP-Containers anzugeben.
TO-FILE = *BY-SOURCE / <filename 1..54 without-gen-vers with-wild-constr(80)>Entsprechend der Herkunft der komprimierten Dateien gilt für den Ausgabenamen Folgendes:
Bei BS2000-Dateien wird der Name der Ausgabedatei entsprechend den SDF-Regeln für Konstruktionsangaben gebildet (siehe SDF-Metasyntax, Handbuch
„Kommandos“ [2]).- Bei Nicht-BS2000-Dateien (PC, UNIX-System) wird der Name der Ausgabedatei so gebildet, dass das Zeichen * im Operanden TO-FILE durch den im Archiv enthaltenen Dateinamen ersetzt wird. Der mögliche Pfad der Datei wird bei Erstellung des Dateinamens ignoriert.
TO-FILE= | BS2000-Datei | Nicht-BS2000-Datei |
*BY-SOURCE | Der Ausgabedateiname ist der Dateiname, wie er im Archiv registriert wurde.
| Der Ausgabedateiname ist der Dateiname ohne Zugriffspfad mit der aktuellen Katalog-/Benutzerkennung als Präfix. |
<filename 1..54 with-wildconstr(80)> | Gültiges Format ist:
| Gültiges Format ist:
|
Wenn einige Namen der komprimierten Dateien nicht mit BS2000 kompatibel sind, muss man sie einzeln extrahieren und jeweils einen gültigen Ausgabenamen angeben. Wenn sich beim Extrahieren ein ungültiger Dateiname ergibt, erhält die die betroffene Datei ersatzweise den folgenden Dateinamen:
FILExxxx.yyyymmdd.hhmmss
Dabei ist xxxx eine fortlaufende Nummer und yyyymmdd.hhmmss steht für das aktuelle Datum und die aktuelle Uhrzeit. Die vorgenommene Umbenennung zeigt BS2ZIP mit der Meldung SZP0090 an. Beispiel:
% SZP0090 Warning. File name 'TEST_KDO_1.HTM' is not BS2000 compliant.The file will be extracted under the name 'FILE0001.20111108.161442'
Die Katalog-/Benutzerkennung dieser Dateien wird vom <PREFIX> übernommen. Falls sie nicht angegeben sind, wird standardmäßig die Katalog- und Benutzerkennung des aktuellen Benutzers verwendet.
WRITE-MODE =
Gibt an, ob eine vorhandene Datei überschrieben werden soll.
Beim Überschreiben einer vorhandenen Datei bestimmt der CODED-CHARACTER-SET der vorhandenen Datei die Kodierung der extrahierten Datei. Anhand des Operanden CHARACTER-CONVERSION und gemäß folgender Tabelle wird die Konvertierung durchgeführt:
CHARACTER-CONVERSION | C-C-S der vorhandenen Datei / Katalogeintrag | Aktuelle Codierung der Datei im Archiv | Konvertierungsart |
|---|---|---|---|
| *BY-CONTAINER-FORMAT | Non-UTF EBCDIC (EDF041, EDF042, ...) | Non-UTF ASCII (ISO88591, ISO88592, ...) | ASCII -> EBCDIC |
| *BY-CONTAINER-FORMAT | Non-UTF ASCII (ISO88591, ISO88592, ...) | Gleiche non-UTF ASCII (ISO88591, ISO88592, ...) | Keine Konvertierung |
| *BY-CONTAINER-FORMAT | UTF (UTF8, UTF16, UTFE) | gleiche Kodierung | Keine Konvertierung |
| *NO | beliebige Kodierung | gleiche Kodierung | Keine Konvertierung |
| *TO-WIN-ANSI | Non-UTF ASCII (ISO88591, ISO88592, ...) | Non-UTF EBCDIC(EDF041, EDF042, ...) | EBCDIC-> ASCII |
| *TO-WIN-ANSI | Non-UTF EBCDIC (EDF041, EDF042, ...) | Extraktionsfehler | Extraktionsfehler |
| *TO-WIN-ANSI | UTF (UTF8, UTF16, UTFE) | gleiche UTF (UTF8, UTF16, UTFE) Kodierung | Keine Konvertierung |
| *TO-EBCDIC | Non-UTF ASCII (ISO88591, ISO88592, ...) | Extraktionsfehler | Extraktionsfehler |
| *TO-EBCDIC | Non-UTF EBCDIC (EDF041, EDF042, ...) | Non-UTF ASCII (ISO88591, ISO88592, ...) | ASCII -> EBCDIC |
| *TO-EBCDIC | UTF (UTF8, UTF16, UTFE) | gleiche UTF (UTF8, UTF16, UTFE) Kodierung | Keine Konvertierung |
| *BY-PARAMETERS(FROM-CCS,TO-CSS) | beliebige Kodierung (vorhandener Katalogeintrag wird ignoriert) | FROM-CCS Wert | FROM-CCS -> TO-CSS |
WRITE-MODE = *CREATE
Die Ausgabedatei wird neu erzeugt, sie darf nicht existieren. Die Anweisung wird zurückgewiesen, wenn die Datei schon existiert.
WRITE-MODE = *REPLACE-ONLY
Die Ausgabedatei muss existieren und wird ersetzt. Die Anweisung wird zurückgewiesen, wenn die Datei nicht existiert.
Wenn BS2ZIP eine fremde Textdatei extrahiert, ermittelt es das CODED-CHARACTER-SET-Attribut der zu überschreibenden Datei.Dieses Attribut wird als Kodierung der extrahierten Datei verwendet. Aus diesem Attribut leitet BS2ZIP entsprechend obiger Tabelle außerdem den CCSNAME der Kodierung ab, in der die Datei im Archiv gespeichert ist.
WRITE-MODE = *ANY
Die Ausgabedatei wird überschrieben, wenn sie schon existiert, bzw. wird erstellt, falls sie noch nicht existiert.
Wenn BS2ZIP eine fremde Textdatei extrahiert, ermittelt es das CODED-CHARACTER-SET-Attribut der zu überschreibenden Datei.Dieses Attribut wird als Kodierung der extrahierten Datei verwendet.Aus diesem Attribut leitet BS2ZIP entsprechend obiger Tabelle außerdem den CCSNAME der Kodierung ab, in der die Datei im Archiv gespeichert ist.
DATA-TYPE =
Der Operand DATA-TYPE steuert die Datensatzstruktur der zu extrahierenden Dateien.
DATA-TYPE | Archiv-Format | Archiv-Format BS2000 |
*NOT‑SPECIFIED | Wenn im ZIP-Archiv keine Datei-Info gefunden wird, wird *CHARACTER angenommen, andernfalls wird die Datei-Info verwendet. | Wenn keine Datei-Info gefunden wird, führt dies zu einem Fehler, andernfalls wird die Datei-Info verwendet |
*CHARACTER | Die Datei wird als SAM-Datei extrahiert. Es wird davon ausgegangen, dass die Sätze durch 0D0A getrennt sind. | Die Anweisung wird zurückgewiesen. |
*BINARY | Die Datei wird als PAM-Datei extrahiert. | Die Anweisung wird zurückgewiesen. |
*SAM-BINARY | Die Datei wird als binäre SAM-Datei (REC-FORM=U) extrahiert. | Die Anweisung wird zurückgewiesen. |
CHARACTER-CONVERSION =
Dieser Operand steuert die WIN-ANSI/EBCDIC-Konvertierung. Die Konvertierung wird nur für folgende Dateien unterstützt:
Datei wird mit DATA-TYPE=*CHARACTER extrahiert
Datei wird mit DATA-TYPE=*NOT-SPECIFIED extrahiert und die Datei ist in der Datei-Info nicht als PAM-Datei ausgewiesen.
Die Art der Konvertierung wird durch das Vorhandensein und die Werte des CODED-CHAR-SET-Attributs und des erweiterten Datenfelds bestimmt. Sowohl diese Metadaten als auch der Kodierungstyp kann mit der Anweisung SHOW-FILE-ATTRIBUTES mit dem Operanden INFORMATION=*ALL überprüfen werden.
CHARACTER- CONVERSION | Konvertierungsverhalten | |
*BY-CONTAINER-FORMAT | Standardwert. Das Verhalten ist abhängig vom Format, mit dem das ZIP-Archiv geöffnet wird. | |
*NO | Es wird keine Konvertierung durchgeführt. | |
*TO-WIN-ANSI | WIN-ANSI-Konvertierung wird durchgeführt (nur beim Entpacken in SAM/ISAM-Datei). | |
*TO-EBCDIC | EBCDIC-Konvertierung wird durchgeführt (nur beim Entpacken in SAM/ISAM-Datei). | |
| *BY-PARAMETERS(...) | Die Konvertierung wird gemäß der Angaben zu Quell- und Ziel-Zeichensatz durchgeführt (nur beim Entpacken in SAM/ISAM-Datei). | |
| FROM-CCS | Coded-Character-Set der zu konvertierenden Quell-Datei | |
| TO-CCS=*STD | Der Coded-Character-Set der Zieldatei wird ausgewählt, indem der erste vollständig kompatible Coded-Character-Set in EBCDIC mit derselben ISO-Codevariantennummer wie der ursprünglich Coded-Character-Set gefunden wird. Wenn der ursprüngliche Coded-Character-Set ein Unicode Zeichensatz ist, wird keine Konvertierung durchgeführt. (ISO-Code-Variantennummer, siehe Handbuch XHCS) | |
| TO-CCS | Coded-Character-Set der konvertierten Ziel-Datei | |
Die Art der Konvertierung wird bestimmt durch:
- den Wert des Operanden CHARACTER-CONVERSION
- den Wert des Operanden DATA-TYPE
- den WRITE-MODE-Operanden und ggf. dem Attribut CODED-CHARACTER-SET der zu überschreibenden Datei
- das Vorhandensein und der Wert des Attributs FCBTYPE aus der Datei-Info der Datei im Archiv
- das Vorhandensein und der Wert des Attributs CODED-CHAR-SET aus der Datei-Info der Datei im Archiv
- das Vorhandensein und die Werte des erweiterbaren Datenfelds.
- Überprüfung der ersten 32 kB der Datei (wird nur durchgeführt, wenn das Attribut CODED-CHAR-SET in der Datei-Info nicht vorhanden ist)
Die Metadaten der Datei im Archiv (oder Datei-Info) können mit der BS2ZIP-Anweisung SHOW-FILE-ATTRIBUTES mit dem Operanden INFORMATION=*ALL unter COMMENTS überprüft werden. Diese Datei-Infos mit Dateiattributen sollten in den Metadaten aller von BS2ZIP hinzugefügten Dateien enthalten sein. Sie enthalten das Attribut CODED-CHAR-SET, das die ursprüngliche Kodierung der hinzugefügten Dateien angibt. Wenn die Datei-Info in den Metadaten einer Datei im Archiv nicht vorhanden ist, wird davon ausgegangen, dass es sich bei der Datei um eine BS2000-fremde Datei handelt, d. h. es wurde von einem Archivmanager eines Drittanbieters auf Nicht-BS2000-Systemen hinzugefügt. Standardmäßig werden solche Dateien gescannt, um die wahrscheinlichste Kodierung zu ermitteln (ISO8859F, WCP1252, UTF8 oder UTF16). Der Algorithmus zur Kodierungserkennung beruht auf einer Heuristik, so dass empfohlen wird, die Typzeichenkonvertierung manuell einzustellen. Ab V21.B10 wird das erweiterbare Datenfeld von BS2ZIP allen Dateien von BS2ZIP hinzugefügt. Es enthält ein Feld mit dem Namen der Kodierung, in der die Datei im Archiv gespeichert ist.
Die Zeichenkonvertierung von Dateien in Unicode-Varianten ist nur mit CHARACTER-CONVERSION=*BY-PARAMETERS() verfügbar. Beim Extrahieren von Unicode-Dateien mit allen anderen Werten dieses Operanden wird die Zeichenkonvertierung übersprungen. Unterstützte Unicode-CCSNAMEn sind: UTF8, UTFE, UTF16 (Big-Endian).
In BS2ZIP sind die CCSNAMEn in vier Typen eingeteilt: Ein-Byte-EBCDIC (*EBCDIC), Ein-Byte-ASCII (*ASCII), Unicode (*UNICODE) und *UNKNOWN. Nachfolgend die Tabelle mit der Liste der Kodierungen für jeden Typ:
| *EBCDIC | *ASCII | *UNICODE | *UNKNOWN |
|---|---|---|---|
EDF03IRV EDF03DRV EDF04DRV EDF041 EDF042 EDF043 EDF044 EDF045 EDF046 EDF047 EDF049 EDF04A EDF04B EDF04C EDF04D EDF04E EDF04F EEHCL2 EEHCLC EEHCLC1 EEHCLAA EEHCLG | ISO88591 ISO88592 ISO88593 ISO88594 ISO88595 ISO88597 ISO88599 ISO8859F WCP1252P | UTF8 UTFE UTF16 | Alle CCSNAMEs, die in |
Wenn eine Datei von BS2ZIP zu einem Archiv mit unbekanntem Typ hinzugefügt wurde, kann EXTRACT-FILE nur mit CHARACTER-CONVERSION = *NO verwendet werden, um die Zeichenkonvertierung zu deaktivieren, oder mit CHARACTER-CONVERSION = *BY-PARAMETERS, um die Metadaten der Datei zu ignorieren und die aktuelle und die gewünschte Kodierung der Ausgabedatei anzugeben. Alle anderen Optionen für CHARACTER-CONVERSION führen zu einem Fehler bei der Anweisung EXTRACT-FILE.
CHARACTER-CONVERSION = *BY-CONTAINER-FORMAT
Standardwert. Verhalten, das durch das Öffnungsformat des ZIP-Containers bestimmt wird
Dateien werden nur konvertiert
- wenn das Archiv im Winzip-kompatiblen Format geöffnet wird
- wenn die Originaldatei eine SAM/ISAM-Struktur hat
- wenn bei DATA-TYPE *NOT-SPECIFIED oder *CHARACTER angegeben ist
- Datei hat keine Unicode Kodierung
| Bedingung | Ergebnis |
|---|---|
| Es wird keine Zeichenkonvertierung durchgeführt. |
Die Datei besitzt:
| Zeichenkonvertierung von der aktuellen Kodierung in die ursprüngliche Kodierung wird durchgeführt |
Die Datei besitzt:
| Konvertierung von ISO8859F nach EDF04F |
Die Datei besitzt:
| Es wird keine Zeichenkonvertierung durchgeführt. |
| Es wird keine Zeichenkonvertierung durchgeführt. |
| Es wird eine Konvertierung in EBCDIC vorgenommen. |
| Es wird eine Konvertierung von ASCII nach EBCDIC durchgeführt. |
| Es wird keine Konvertierung durchgeführt. |
CHARACTER-CONVERSION = *NO
Es wird keine Konvertierung durchgeführt.
Es wird keine Zeichenkonvertierung durchgeführt. Die Metadaten der Dateien im Archiv wirken sich nur auf das CODED-CHARACTER-SET-Attribut der Ausgabedatei aus. Wenn weder erweiterte Datenfelder noch Datei-Infos mit CODED-CHAR-SET-Attribut vorhanden sind, führt BS2ZIP einen Scan der ersten 32 kB der Daten durch, um die wahrscheinlichste Kodierung aus ISO8859F, WCP1252, UTF8, UTF16 zu bestimmen.
| Bedingung | Ergebnis |
|---|---|
| Das Attribut CODED-CHARACTER-SET der Ausgabedatei wird auf das CODED-CHAR-SET-Attribut aus der Datei-Info gesetzt. |
| Das Attribut CODED-CHARACTER-SET der Ausgabedatei wird auf das CODED-CHAR-SET-Attribut aus der Datei-Info gesetzt. |
| Das Attribut CODED-CHARACTER-SET der Ausgabedatei wird basierend auf dem Scan der ersten 32 kB der Datei im Archiv festgelegt. Mögliche Werte: ISO8859F, WCP1252, UTF8, UTF16 |
| Das CODED-CHARACTER-SET-Attribut der Ausgabedatei bleibt erhalten. |
CHARACTER-CONVERSION = *TO-WIN-ANSI
Die WIN-ANSI-Konvertierung wird durchgeführt. Die Ausgabedatei erfolgt immer im ASCII-Format, außer wenn die Datei im Archiv in einer Unicode-Variante gespeichert ist.
| Bedingung | Ergebnis |
|---|---|
| Es wird keine Zeichenkonvertierung durchgeführt. |
Die Datei besitzt:
| Es wird eine Zeichenkonvertierung vom aktuellen Zeichensatz nach ASCII durchgeführt, es sei denn der Zeichensatz liegt bereits in ASCII vor (gemäß erweiterbarem Datenfeld)1. |
Die Datei besitzt:
| Es wird eine Zeichenkonvertierung von EDF04F nach ISO8859F durchgeführt. |
Die Datei besitzt:
| Es wird keine Zeichenkonvertierung durchgeführt. |
| Es wird eine Zeichenkonvertierung von EDF04F nach ISO8859F durchgeführt. |
| Es wird eine Zeichenkonvertierung von EBCDIC nach ASCII durchgeführt1. |
| Es wird keine Zeichenkonvertierung durchgeführt. |
1 Siehe Info-Box weiter unten
CHARACTER-CONVERSION = *TO-EBCDIC
Es wird eine EBCDIC-Konvertierung durchgeführt. Die Ausgabedatei erfolgt immer im EBCDIC-Format, außer wenn die Datei in der Unicode-Variante im Archiv vorliegt.
| Bedingung | Ergebnis |
|---|---|
| Es wird keine Zeichenkonvertierung durchgeführt. |
Die Datei besitzt:
| Es wird eine Zeichenkonvertierung vom aktuellen Zeichensatz nach EBCDIC durchgeführt, es sei denn der Zeichensatz liegt bereits in EBCDIC vor (gemäß erweitertem Datenfeld)1. |
Die Datei besitzt:
| Conversion from ISO8859F to EDF04F. |
Die Datei besitzt:
| Es wird keine Zeichenkonvertierung durchgeführt. |
| Es wird eine Zeichenkonvertierung von ISO8859F nach EDF04F durchgeführt. |
| Es wird eine Zeichenkonvertierung von ASCII nach EBCDIC durchgeführt1. |
| Es wird keine Zeichenkonvertierung durchgeführt. |
1 Siehe Info-Box weiter unten
CHARACTER-CONVERSION = *BY-PARAMETERS(...)
Die Konvertierung erfolgt gemäß den angegebenen Quell- und Zielzeichensätzen.
Dateien werden nur konvertiert
- wenn die Originaldatei eine SAM/ISAM-Struktur hat
- wenn DATA-TYPE *NOT-SPECIFIED oder *CHARACTER angegeben ist.
Mit dieser Option können Metadaten (Datei-Info) der Datei im Archiv ignoriert werden, um den Zeichenkonvertierungstyp manuell festzulegen.
Während der Extraktion einer Datei können mit dieser Option folgende Eigenschaften ignoriert werden:
- CODED-CHAR-SET-Attribut im Kommentarfeld der Datei
- das erweiterte Datenfeld
- CODED-CHARACTER-SET-Attribut einer vorhandenen Datei, wenn WRITE-MODE = *REPLACE-ONLY oder *ANY, diese Datei überschreibt.
Dies ist besonders nützlich für Dateien, die von verschiedenen Archivmanagern zum Archiv hinzugefügt wurden und bei fremden Dateien den Scan der ersten 32kB zu überspringen. FROM-CCS und TO-CSS akzeptieren alle verfügbaren CCSNAME-Werte, es sei denn, beide sind keine Unicode-Variante und haben unterschiedliche ISO-Codes. Die Angabe des gleichen Werts für FROM-CSS und TO-CCS führt dazu, dass BS2ZIP die Konvertierung überspringt, allerdings wird dieser CCSNAME dann als CODED-CHARACTER-SET-Attribut der extrahierten Datei gesetzt.
Für TO-CSS kann auch *STD angegeben werden. Wenn FROM-FILE nicht Unicode und ASCII ist, wählt BS2ZIP ein Paar EBCDIC CCSNAME mit demselben ISO-Code aus und konvertiert es. In allen anderen Fällen mit TO-CSS=*STD wird die Konvertierung übersprungen, allerdings übernimmt BS2ZIP den CCSNAME aus FROM-CCS als CODED-CHARACTER-SET-Attribut der extrahierten Datei.
Wenn XHCS einige Zeichen nicht konvertieren konnte, wird eine Warnmeldung ausgegeben und diese Zeichen mit Punkt „.“ (x'4B') gekennzeichnet.
1 Die Metadaten von Dateien können CCS-Namen enthalten, die derzeit nicht im System vorhanden sind. Das erweiterte Datenfeld enthält Informationen zu den ISO-Codes der Kodierung, ob es sich um EBCDIC/ASCII, Unicode oder andere handelt. Diese Informationen werden verwendet, um Kodierungen durch die beste verfügbare Alternative zu ersetzen, die im System definiert ist.
Beispiel: Laut den Metadaten (Datei-Info) einer Datei ist dessen aktuelle Kodierung WCP1252 (ISO-Code 15), während die ursprüngliche Dateikodierung EDF04F war, wobei WCP1252 jedoch derzeit nicht in XHCS definiert sei. BS2ZIP ruft XHCS auf, um nach verfügbaren CCSNAMES mit ISO-Code 15 zu suchen. Es erkennt, dass ISO8859F verfügbar ist, und konvertiert die Datei während der Dateiextraktion von ISO8859F in EDF04F.
BLOCK-CONTROL-INFO =
Steuert die Blockkontrolleigenschaft der resultierenden Datei. Dies erlaubt insbesondere das Extrahieren von Original-PAMKEY-Dateien auf einer NK-Platte.
BLOCK-CONTROL-INFO = *KEEP
Die resultierende Datei behält die Blockkontrolleigenschaft der ursprünglichen Datei.
BLOCK-CONTROL-INFO = *IGNORE
Die resultierende Datei wird mit der Standard-Blockkontrolle der Platte erstellt, auf der sie gespeichert wird.
PAD-EMPTY-RECORD = *N O / *YES
Steuert, ob leere Zeilen beim Extrahieren aus einem WinZip-kompatiblen Archiv mit einem Leerzeichen aufgefüllt werden. Das Auffüllen erfolgt nur, wenn der Datentyp *NOT-SPECIFIED oder *CHARACTER ist.
DELIMITER =
Steuert, welches Zeilentrennzeichen die Zeilen in der extrahierten Datei trennt. Diese Einstellung wird ignoriert, es sei denn, DATA-TYPE ist *NOT-SPECIFIED oder *CHARACTER und das Archiv liegt im WinZip-kompatiblen Format vor.
Wenn diese Option auf *STD / *CRLF / *LF / *NL gesetzt ist, basiert die Trennzeichenoption auf der gespeicherten Kodierung der Datei im Archiv und der Option CHARACTER-CONVERSION. Die folgenden Tabelle enthält Trennzeichen für verschiedene Kodierungen:
| Trennzeichen | Ein-Byte ASCII, UTF8 | EBCDIC | UTF16 |
|---|---|---|---|
| *CRLF | 0D0A | 0D25 | 000D000A |
| *LF | 0A | 25 | 000A |
| *NL | 0A | 15 | 000A |
DELIMITER = *STD
Von BS2ZIP hinzugefügte Dateien, die ein erweiterbares Datenfeld enthalten, verwenden zur Trennung das in diesem Feld angegebene Trennzeichen. Es kann mit SHOW-FILE-ATTRBIUTES INFO=*ALL angezeigt werden. Bei Dateien, die ohne erweiterbares Datenfeld hinzugefügt wurden (durch Dienstprogramme von Drittanbietern oder BS2ZIP älter als V21.0B10), sucht BS2ZIP nach allen bei dieser Kodierung üblichen Trennzeichen. Beispielsweise sucht BS2ZIP bei EBCDIC-Dateien nach 0D25, 25 und 15.
DELIMITER = *CRLF / *LF / *NL
BS2ZIP sucht nach den Trennzeichen, die zur Kodierung der Datei gehören. Wenn die Datei beispielsweise im EBCDIC-Format vorliegt, und DELIMITER=*LF angegeben wurde, sucht BS2ZIP nur nach 25.
DELIMITER = *0D0A / *0A / *0D25 / *25 / *15 / *000D000A / *000A
BS2ZIP ignoriert die Kodierung der Datei und sucht nur nach dem angegebenen Zeilentrennzeichen.
LOGGING = *MINIMUM / *MAXIMUM
Legt den Umfang der Meldungsausgabe fest.
LOGGING = *MINIMUM
Nur Fehlermeldungen werden ausgegeben
LOGGING =*MAXIMUM
Alle Meldungen werden ausgegeben. Derzeit wird nach jedem Extrahieren einer Datei die (garantierte) Meldung SZP0122 ausgegeben; in Zukunft werden gegebenenfalls weitere Meldungen ausgegeben.
Hinweise
Wenn mit der Anweisung MODIFY-ZIP-OPTIONS Datenverschlüsselung eingestellt wurde, werden verschlüsselte Dateien beim Extrahieren wieder entschlüsselt. Die dabei verwendete Standard-Zip-2.0-Verschlüsselung ist kompatibel zu WinZip auf Windows-basierten Systemen.
Dateien, die aus einem in BS2000 erstellten Archiv extrahiert werden, werden mit denselben Organisationsmerkmalen wie die Originaldatei erstellt, außer Blockfüllungsfaktor (PADDING-FACTOR) und Blockformat. Der Blockfüllungsfaktor ist der Standard-DMS-Blockfüllungsfaktor. Das hat zur Folge, dass die Größe der extrahierten SAM- und ISAM-Datei differieren kann von der Größe der Originaldateien.
Dateien, die aus einem in einer fremden Umgebung erstellten Archiv extrahiert werden, werden erstellt
als SAM-Dateien mit BUF-LEN=STD(16), falls DATA-TYPE=*NOT-SPECIFIED oder *CHARACTER,
als PAM-Dateien mit BUF-LEN=STD(16), falls DATA-TYPE=*BINARY ist, und
als SAM-Dateien mit REC-FORM=U, falls DATA-TYPE=*SAM-BINARY ist.
K-/NK-Platten
Wenn eine komprimierte Datei mit PAMKEY-Blockkontrolle auf einer NK-Platte extrahiert werden muss, dann muss man den Operanden BLOCK-CONTROL-INFO=*IGNORE verwenden. Die Datei wird in das NK-Format konvertiert. Bei SAM- oder ISAM-Dateien, deren Sätze den gesamten im Block verfügbaren Platz einnehmen, werden jedoch Daten abgeschnitten. In diesem Fall wird ein Fehler gefunden und der Extraktionsvorgang für die aktuelle Datei abgebrochen. Die Ausgabe-Datei wird gelöscht.
Um komprimierte Dateien (insbesondere Lade-Module) von NK-Platten auf einer K-Platte zu extrahieren, müssen Sie die BLOCK-CONTROL-INFO=*KEEP angeben.
Wenn während der Ausführung der Anweisung EXTRACT-FILE die K2-Taste gedrückt wird, wird die Verarbeitung mit der Fragemeldung
SZP0208unterbrochen:Der Benutzer kann die Verarbeitung einfach fortsetzen.
Der Benutzer kann die Verarbeitung beenden und kehrt zurück in den Anweisungsmodus (//). Die Dateien, die bis zum Unterbrechungszeitpunkt nicht extrahiert sind, werden nicht mehr extrahiert. Sie müssen ggf. erneut extrahiert werden.
Bei der Auswahl von Dateien, die von fremden Plattformen kommen, ist zu berücksichtigen, dass bei den registrierten Dateinamen zwischen Groß- und Kleinschreibung unterschieden wird. Daher muss man für die Auswahl von Dateinamen mit Kleinbuchstaben das C-String-Format verwenden.
Regeln für die Benennung extrahierter Dateien
BS2000-Dateien (beachten Sie die SDF-Regeln für Konstruktionsangaben, Handbuch „Kommandos“ [2])
FILE-NAME
TO-FILE
Eingetragener Dateiname
Resultierender Dateiname 2
MYFILE1
*BY-SOURCE
MYFILE1
:ccid:$cuid.MYFILE1
*
*BY-SOURCE
MYFILE1
MYFILE2:ccid:$cuid.MYFILE1
:ccid:$cuid.MYFILE2MY*
EXT-*
MYFILE1
MYFILE2:ccid:$cuid.EXT-FILE1
:ccid:$cuid.EXT-FILE2MYFILE1
*BY-SOURCE
:XXXX:$UID.MYFILE1
keine Datei gefunden
:XXXX:$UID.
*BY-SOURCE
:XXXX:$UID.MYFILE1
:XXXX:$UID.MYFILE1
$UID.
*BY-SOURCE
$UID.MYFILE1
:ccid:$UID.MYFILE1
2Dabei ist $cuid = aktuelle Benutzerkennung und :ccid = Katalogkennung der Benutzerkennung
Nicht-BS2000-Dateien:
FILE-NAME
TO-FILE
Eingetragener Dateiname
Resultierender Dateiname 3
MYFILE1
*BY-SOURCE
/temp/data/myfile.txt
keine Datei gefunden
*
*BY-SOURCE
/temp/data/myfile1.txt
/temp/data/myfile2.txt:ccid:$cuid.MYFILE1.TXT
:ccid:$cuid.MYFILE2.TXT'*myfile*'
EXT-*
/temp/data/myfile1.txt
/temp/data/myfile2.txt:ccid:$cuid.EXT-MYFILE1.TXT
:ccid:$cuid.EXT-MYFILE2.TXT3Dabei ist $cuid = aktuelle Benutzerkennung und :ccid = Katalogkennung der Benutzerkennung