Anhang

Anhang zur Beschreibung der Features und des Implementierungsstatus

von FreeCOM

Aktuelles Verzeichnis:

  Das aktuelle Verzeichnis ist das Standardverzeichnis eines Laufwerks.
  DOS speichert für jedes Laufwerk ein Standardverzeichnis. Wenn ein Pfad
  nur mit einer Laufwerksspezifikation angegeben wird, z. B. D:, wird er
  mit diesem Standardverzeichnis dieses Laufwerks ergänzt, um den zu
  verwendenden absoluten Pfad zu erstellen.

Aktuelles Arbeitsverzeichnis:

  Im Gegensatz zum aktuellen Verzeichnis ist das aktuelle Arbeitsver-
  zeichnis der absolute Pfad, der aus dem aktuell ausgewählten Laufwerk
  und dem aktuellen Verzeichnis dieses Laufwerks zusammengesetzt wird.

Pfadspezifikation:

  Unter DOS wird ein absoluter Pfad aus mehreren Komponenten zusammen-
  gebaut:
  1. Dem Laufwerk,
  2. dem Verzeichnis,
  3. dem Dateinamen und
  4. der Dateierweiterung.
  Wie z.B.: D:\Verzeichnis1\Verzeichnis2\DATEINAME.EXT.
  Das Laufwerk besteht aus einem einzelnen Buchstaben von A bis Z, dem
  ein Doppelpunkt ":" folgt. Der verbleibende Teil eines Pfads besteht
  aus einander ähnlichen Komponenten, die durch einen einzelnen Backslash
  "\" voneinander abgegrenzt sind. Die letzte Komponente wird auch Datei-
  name genannt. Jede dieser Komponenten kann aus einem Namen mit bis zu
  acht Zeichen und einer Erweiterung mit bis zu drei Zeichen bestehen.
  Die beiden Teile werden durch einen einzelnen Punkt "." voneinander ab-
  gegrenzt. Auch wenn die Erweiterung fehlen kann, muß der Dateiname min-
  destens EIN Zeichen lang sein.
  Beachte: Der Begriff Dateiname ist nicht nur auf Dateien im üblichen
  Sinn beschränkt; er kann sich auch auf jeden anderen sichtbaren Namen
  in einem Verzeichnis, Unterverzeichnis oder auch einer Laufwerksbe-
  zeichnung (Volume label) beziehen.
  Um die Eingabe eines Pfads zu erleichtern, kann der Benutzer statt
  einen absoluten einen relativen Pfad angeben. Bei einem relativen Pfad
  können eine oder mehrere Komponenten fehlen:
    - Wenn kein Laufwerk, d. h. kein Doppelpunkt angegeben ist, wird dem
      Pfad das aktuell ausgewählte Laufwerk vorangestellt.
    - Wenn dem Verzeichnis kein Backslash vorangestellt oder überhaupt
      kein Verzeichnis angegeben ist, wird das aktuelle Laufwerksver-
      zeichnis direkt hinter dem Doppelpunkt eingefügt.
    - Einige Programme hängen möglicherweise eine fehlende Erweiterung an
      die allerletzte Dateinamenkomponente an.
  Nehmen wir zum Beispiel die aktuellen Verzeichnisse an:
  Laufwerk:  aktuelles Verzeichnis:
  C:         \FREEDOS\HELP
  D:         \TEMP\TEXT

  Das aktuell ausgewählte Laufwerk ist C:.

    1. C:\
       Das Rootverzeichnis von Laufwerk C:
    2. .
       Das aktuelle Arbeitsverzeichnis, also:              C:\FREEDOS\HELP
    3. ..
       Das übergeordnete Verzeichnis, also:                 C:\FREEDOS
    4. D:
       Das aktuelle Verzeichnis von Laufwerk D:, also:      D:\TEMP
    5. D:.
       Das aktuelle Verzeichnis von Laufwerk D:, also:      D:\TEMP
    6. D:..
       Das übergeordnete Verzeichnis von Laufwerk D:, also: D:\
    7. ..\BIN
       Da am Anfang weder ein Laufwerk noch ein führender Backslash
       vorhanden ist, wird vor dem angegebenen Pfad sowohl das aktuell
       ausgewählte Laufwerk als auch das aktuelle Verzeichnis dieses
       Laufwerks eingefügt, also: C:\FREEDOS\HELP\..\BIN. Die einge-
       bettete Komponente .. hat dieselbe Bedeutung wie allein ange-
       geben: übergeordnetes Verzeichnis, allerdings hier im Kontext
       des Verzeichnisses:
       C:\FREEDOS\HELP\ .
       Das bedeutet, dass der endgültige absolute Pfad C:\FREEDOS\BIN
       lautet.
  Pfadangaben, die nicht dem oben genannten Format entsprechen, führen zu
  unterschiedlichem Verhalten der verschiedenen Programme, da es keinen
  Standard zum Scannen, Analysieren und Interpretieren solcher Muster
  gibt.
  Zu den Problemen gehören:
    - mehrere Backslashes,
    - mehrere Punkte,
    - mehrere Doppelpunkte oder ein Doppelpunkt an einer Position ung-
      gleich zwei,
    - das aktuelle Verzeichnis . oder übergeordnete Verzeichnis ..
      spezielle Verzeichnisse im Zusammenhang mit einem Rootverzeichnis,
      wie C:\., C:\.. oder C:\TEMP\..\.. .
  Beachte: Die speziellen Verzeichnisse . und .. sind keine Phantomver-
  zeichnisse oder virtuelle Einträge, sondern Standardeinträge jedes Ver-
  zeichnisses mit Ausnahme der Rootverzeichnisse.
  Diese Einträge helfen Wiederherstellungstools wie CHKDSK oder SCANDISK,
  nach einem Absturz Fehler in der Verzeichnisstruktur zu finden und sie
  zu einer gültigen Verzeichnisstruktur wiederherzustellen. Daher ist
  eine allgemeine Annahme, dass ein Verzeichnis mit drei Punkten "..."
  ein übergeordnetes Verzeichnis des übergeordneten Verzeichnisses bedeu-
  tet, falsch, sie könnte aber von bestimmten Programmen unterstützt
  werden.

Standardregeln für Optionen:

  Optionen werden mit einem Schrägstrich "/" eingeleitet, das folgende
  Zeichen kennzeichnet die Option und wird als Optionszeichen bezeichnet,
  zum Beispiel: /A . Einige Befehle akzeptieren nicht nur ein einzelnes
  Zeichen sondern auch lange Optionsnamen, bei denen ein ganzes Wort
  die Option identifiziert, z. B. /MSG.
  Einige Optionen können in Verbindung mit einem Argument verwendet wer-
  den. Das Argument wird an die Option mit einem Doppelpunkt ":" oder
  einem Gleichheitszeichen "=" angehängt, zum Beispiel: /A:hr oder
  /P=fdexec.bat.
  Mehrere Optionen ohne Argument können zu einer einzigen Option mit oder
  ohne eingebettete Schrägstriche zusammengeführt werden, z. B. /WS oder
  /W/S, anstatt /W /S.
  Da einige Befehle jedoch lange Optionsnamen akzeptieren, ist die Metho-
  de mit eingebetteten Schrägstrichen sicherer und wird deshalb empfohlen.
  Eine Option mit Argument kann aber an der letzten Stelle solcher zusam-
  mengeführter Optionen stehen.
  Optionen ohne Argumente aktivieren oder deaktivieren bestimmte Funk-
  tionen. Daher werden diese Optionen manchmal als Boolesche Optionen
  oder Flags bezeichnet.
  Booleschen Optionen kann optional ein Plus-"+"- oder Minus-"-Zeichen
  vorangestellt werden. Die Boolesche Option O kann also auf drei Arten
  geschrieben werden:
    1. /+O: Die Option ist aktiviert.
    2. /-O: Die Option ist deaktiviert.
    3. /O:  (weder Plus- noch Minuszeichen) Die Option wird umgeschaltet
            oder umgedreht; das heißt, wenn die Option aktuell aktiviert
            ist, ist sie deaktiviert; wenn sie aktuell deaktiviert ist,
            ist sie jedoch aktiviert.
  Ohne Benutzereingriff ist eine boolesche Option standardmäßig deak-
  tiviert, sodaß sich /+O und /O die meiste Zeit gleich verhalten.
  Einige Befehle ermöglichen es dem Benutzer jedoch, die Standardein-
  stellungen bestimmter Optionen zu ändern, z. B. COPY und DIR.

E/A Umleitung:

  Unter DOS können die Standardeingabe und -ausgabe auf eine Datei oder
  ein anderes Gerät umgeleitet werden. Obwohl die Verwendung dieser
  E/A-Streams heute üblich ist, ignorieren sie manche feige Programmierer
  aus Gründen der Geschwindigkeit oder der Programmgröße.
  Wenn der Eingabe-Stream auf eine Datei oder ein Gerät umgeleitet wird,
  werden die Zeichen aus der Datei oder dem Gerät gelesen, anstatt die
  Tastatur abzufragen und den Benutzer aufzufordern, interaktiv Zeichen
  über die Tastatur einzugeben. Normalerweise beenden sich diese Pro-
  gramme, wenn die Datei vollständig gelesen wurde.
  Wenn der Ausgabe-Stream zu einer Datei oder einem Gerät umgeleitet
  wird, werden die Informationen nicht auf dem Bildschirm ausgegeben,
  sondern in die Datei oder das Gerät geschrieben. Gemäß Konvention hat
  jedes Programm zwei Ausgabeströme: einen (Standardausgabe genannt) zur
  Ausgabe normaler Informationen und einen (Standardfehlerausgabe ge-
  nannt) für Fehlermeldungen, die der Benutzer nicht übersehen sollte.
  Umleitungen werden in der Befehlszeile angegeben und wirken sich genau
  auf den hier aufgerufenen Befehl aus, unabhängig davon, ob es sich um
  einen externen oder internen Befehl, einen Alias oder ein BATCH-
  Skript handelt. Die absolute Ausnahme ist der FOR-Befehl, bei dem die
  Umleitung auf den hinter dem Schlüsselwort DO angegebenen Befehl und
  nicht auf FOR selbst angewendet werden muss.
  Wenn in der Befehlszeile mehrere Umleitungen angegeben sind und diese
  denselben Daten-Stream (Eingabe, Ausgabe oder Fehler) betreffen, hat
  die Umleitung ganz rechts Vorrang vor allen vorherigen.
  Umleitungen werden syntaktisch wie folgt angegeben:
  Operator Ziel
    Operator ::= '<' | '>' [ '>' ] [ '&' [ '>' ] ]
    Ziel ::= Datei | Gerät
  Obwohl es nicht relevant ist, wo die Umleitungen in der Befehlszeile
  platziert werden, ist es üblich, sie am Ende der Befehlszeile zu
  platzieren.
  Die Operatoren haben folgende Bedeutung:
    Operator    Umleitung
    <     Eingabe-Stream
    >     Ausgabe-Stream; target file is overwritten
    >>    Ausgabe-Stream; die Ausgabe wird an das Ziel angehängt,
          falls es bereits existiert
    >&    Ausgabe- und Fehler-Stream; Zieldatei wird überschrieben
    >>&   Ausgabe- und Fehler-Stream; die Ausgabe wird an das Ziel
          angehängt, falls es bereits existiert
    >&>   Fehler-Stream; die Zieldatei wird überschrieben
    >>&>  Fehler-Stream;  die Ausgabe wird an das Ziel
          angehängt, falls es bereits existiert

Beispiele:

Beispiel 1:

    cmd <in1 <in2
  Der Eingabe-Stream wird in die Datei IN2 umgeleitet, da diese sich
  ganz rechts befindet.

Beispiel 2:

    cmd <in >out
  Der Eingabe-Stream wird in die Datei IN umgeleitet, die Ausgabe- und
  Fehler-Streams werden zusammengeführt und in die Datei OUT umgeleitet.
  Wenn die Datei OUT bereits existiert, wird der alte Inhalt verworfen
  und durch den neuen ersetzt; andernfalls wird die Datei OUT neu
  erstellt.

Beispiel 3:

    cmd <in >>out
  Wie Beispiel 2, aber anstatt den Inhalt von OUT zu ersetzen, werden,
  wenn die Datei bereits existiert, die neuen Informationen an das Ende
  der Datei angehängt.

Beispiel 4:

    FOR %a IN (*.*) DO ECHO %a >out
  Wie bereits erwähnt, ist FOR eine Ausnahme und leitet die Weiterlei-
  tungen an jeden Aufruf des rechts neben dem Schlüsselwort DO ange-
  gebenen Befehls weiter. Dieses Beispiel überschreibt also die Ausgabe-
  datei jedes Mal, wenn der ECHO-Befehl
  ausgeführt wird, also anstatt eine Dateiliste zu erstellen, wird nur
  die zuletzt gefundene Datei in OUT aufgezeichnet.

Beispiel 5:

    IF EXIST out DEL out
    FOR %a IN (*.*) DO ECHO %a >>out
  Diese Sequenz beseitigt das Problem, der IF Befehl ist erforderlich,
  um die Datei tatsächlich zu ersetzen, anstatt die Dateiliste an die
  wahrscheinlich vorhandene Datei anzuhängen.

Pipes

  Eine andere Form der Umleitung ist das Piping. Dabei wird der Ausgabe-
  Stream eines Befehls mit dem Eingabe-Stream eines anderen Befehls ver-
  bunden. Pipes können auf diese Weise eine beliebige Anzahl von Befeh-
  len miteinander verbinden. Da DOS kein Multitasking-System ist, werden
  Pipes dadurch simuliert, daß der erste Befehl mit einer Ausgabeumlei-
  tung die die ausgegebenen Informationen in einer temporäre Datei er-
  fasst, und dann der zweite Befehl mit einer Eingabeumleitung
  aus dieser temporären Datei. Nach Abschluss des zweiten Befehls wird
  die temporäre Datei gelöscht.

Beispiele:

Beispiel 1:

  cmd1 | cmd2 | cmd3

  Was ähnlich ist wie diese Sequenz:
    cmd1 >%TEMP%\t1
    cmd2 <%TEMP%\t1 >%TEMP%\t2
    DEL %TEMP%\t1
    cmd3 <%TEMP%\t2
    DEL %TEMP%\t2

Beispiel 2:

  Der erste und der letzte Befehl können eine Eingabe- bzw. Ausgabeum-
  leitung haben, etwa wie folgt:
    cmd1 | cmd2 | cmd3 <in >out

  Was ähnlich ist wie diese Sequenz:
    cmd1 >%TEMP%\t1 <in
    cmd2 <%TEMP%\t1 >%TEMP%\t2
    DEL %TEMP%\t1
    cmd3 <%TEMP%\t2 >out
    DEL %TEMP%\t2

Beispiel 3:

  Der Fehler-Stream kann auch gepiped werden:
    cmd1 |& cmd2 | cmd3

  Was ähnlich ist wie diese Sequenz:
    cmd1 >&%TEMP%\t1
    cmd2 <%TEMP%\t1 >%TEMP%\t2
    DEL %TEMP%\t1
    cmd3 <%TEMP%\t2
    DEL %TEMP%\t2

  Hier werden nur die Fehlermeldungen von cmd1 an cmd2 übergeben; die
  Fehlermeldungen von cmd2 und cmd3 werden auf dem Bildschirm ausgegeben.

Verschachtelte Weiterleitungen:

  Bei BATCH-Skripten oder wenn externe Programme andere Programme oder
  eine andere Shell aufrufen, können Weiterleitungen verschachtelt sein,
  z. B.:
  Sehen Sie sich die BATCH-Datei BATCH.BAT an:
    @ECHO OFF
    ECHO 1
    ECHO 2 >aus_2
    ECHO 3
  die aufgerufen wird über:
    BATCH >aus_1
  Wenn das Skript BATCH ausgeführt wird, wird der eigentliche Aus-
  gabe-Stream in die Datei "aus_1" umgeleitet. Daher wird die Ausgabe
  des ersten ECHO-Befehls in diese Datei umgeleitet.
  Da der zweite ECHO-Befehl eine eigene Ausgabeumleitung hat, wird seine
  Ausgabe in die Datei "aus_2" umgeleitet. Nach Abschluss von ECHO wird
  die Umleitung geschlossen und die vorherige wiederhergestellt.
  Dies führt dazu, dass die Ausgabe des dritten ECHO-Befehls
  wieder in "aus_1" umgeleitet wird.

Wildcards

  DOS akzeptiert bestimmte Wildcards (Platzhalter) anstelle von Dateien,
  sodass Sie eine oder mehrere Dateien mit demselben Wildcard-Muster an-
  geben können. Im Gegensatz zu anderen Systemen erweitert jedes Programm
  Platzhalter individuell, anstatt dies der Shell zu überlassen. Die Shell
  muß jedoch die Platzhalter für ihre internen Befehle erweitern. FreeCOM
  unterstützt die Standard-DOS-Platzhalter, die auch vom DOS-Kernel
  selbst unterstützt werden:
  Wildcard   Bedeutung
    *        Jede verbleibende mögliche Zeichenkette, bis auf einen
             Punkt (.)
    ?        Jedes Zeichen außer den DOS Punkt (.); wenn es das letzte
             Zeichen ist, fungiert es als *
  Wildcards sind im letzten Teil eines qualifizierten Pfads erlaubt,
  d. h. hinter dem letzten Backslash (\) oder Doppelpunkt (:). Wildcards
  passen entweder vor oder hinter den Punkt, der den Dateinamen und seine
  Erweiterung trennt. Ob Verzeichnisse, Datenträgerbezeichnungen oder
  versteckte Dateien und Systemdateien einem Muster entsprechen, hängt
  vom Befehl ab, der es erweitert. Bei Buchstaben wird die Groß-/Klein-
  schreibung nicht beachtet.

Beispiele:

  Muster         Bedeutung
  *.*            Irgendeine Datei im aktuellen Verzeichnis
  c:*.*          Irgendeine Datei im aktuellen Arbeitsverzeichnis des
                 Laufwerks C:
  *              Irgendeine Datei ohne Erweiterung. Einige Befehle, wie
                 z.B. DIR interpretieren ein einzelnes * als *.*
  a*.*           Jede Datei, deren erstes Zeichen ein A ist; weder der
                 Rest des Dateinamens noch die Dateierweiterung sind von
                 Bedeutung.
  a?.*           Das Gleiche wie oben
  a???.*         Das Gleiche wie oben
  a*b.*          Das Gleiche wie oben
  a?b.*          Jede Datei, deren erstes Zeichen ein A und das dritte
                 ein B ist; die restlichen Zeichen und die Erweiterung
                 sind unwichtig
  file?.txt      Alle Dateien, deren erste vier Zeichen FILE sind und
                 deren Erweiterung TXT lautet.
  \scripts\*.pl  Alle Perl-Dateien im Verzeichnis \SCRIPTS im Stammver-
                 zeichnis des aktuell ausgewählten Laufwerks
  Achtung: Es gibt im Zusammenhang mit Platzhaltern häufig Fehler, da
  DOS weniger funktionale Platzhalter als andere Systeme hat, insbe-
  sondere:
    a*bc.*txt:   Alle Zeichen rechts von einem Sternchen * bis zum Punkt
                 "." oder dem Ende des Dateinamens werden ignoriert;
                 dieses Muster entspricht: a*.*.
    a?.?:        Ein Fragezeichen ? als letztes Zeichen entweder des
                 Dateinamens oder der Dateierweiterung hat die gleiche
                 Wirkung wie ein Sternchen * und bedeutet nicht genau ein
                 beliebiges Zeichen, insbesondere muß kein Zeichen vor-
                 handen sein; dieses Muster entspricht einem a*.*

BATCH Scripte

  Die Shell ermöglicht durch das Schreiben von BATCH-Skripten die Automa-
  tisierung einfacher Aufgaben. Dies sind reine Textdateien, in denen in
  einer Zeile jeweils nur ein Befehl steht. Alle Befehle, sowohl interne
  als auch externe, können, zusammen mit Umleitungen, Pipes, UMGEBUNGS-
  VARIABLEN-Ersetzungen usw., in BATCH-Skripten verwendet werden. Das
  Skript wird Zeile für Zeile ausgeführt. Die Zeilen werden standardmäßig
  vor der Ausführung auf dem Bildschirm angezeigt.
  Um dies zu verhindern, kann mit dem Befehl ECHO diese Funktion abge-
  schaltet oder jeder Zeile das ad-Zeichen (@) vorangestellt werden,
  z. B.:
    ECHO Diese Zeile wird angezeigt
    @ECHO Diese Zeile wird NICHT angezeigt
  Normalerweise beginnen BATCH-Skripte mit der Zeile:
    @ECHO OFF
  um während der Skriptverarbeitung die weitere Wiedergabe jeder Zeile
  und auch die Wiedergabe der Zeile selbst zu unterdrücken.
  Zeilen, die mit einem Doppelpunkt (:) beginnen, kennzeichnen diese
  bestimmte Skriptzeile, zu der mit dem Befehl GOTO gesprungen
  werden kann, z. B.:
    @ECHO OFF
    IF "%1"=="" GOTO anwendung
    ECHO Argument1=%1
    ECHO Argument2=%2
    ECHO Argument3=%3
    GOTO end
    :anwendung
    ECHO Anwendung: %0 {Argumente}...
    :end
  Wenn das Skript ohne Argument aufgerufen wird, führt Zeile 2 den GOTO-
  Befehl aus und überspringt somit die Zeilen 3 bis 7 und fährt mit Zeile
  8 fort. Andernfalls werden die drei ECHO-Befehle aufgerufen und der
  GOTO-Befehl in Zeile 6 überspringt das ECHO der Fehlermeldung in Zeile
  8 und fährt mit Zeile 9 fort. Stößt die Shell auf eine Zeile, die mit
  einem Doppelpunkt beginnt, wird diese stillschweigend übersprungen;
  im Gegensatz zum REM-Befehl werden nicht einmal Umleitungen ausgewer-
  tet. Wenn die Shell das Ende der Datei erreicht, wird die BATCH-Ver-
  arbeitung beendet. Der Fehlerlevel des zuletzt erzeugten externen Be-
  fehls bleibt unverändert. Da die Shell das BATCH-Skript schließt und
  es jedes Mal neu öffnet, wenn ein Befehl (sowohl interne als auch ex-
  terne) aufgerufen wird, können Disketten während einer BATCH-Verar-
  beitung sicher ausgetauscht werden, z. B.:
    @ECHO OFF
    ECHO Kopiere Disk1
    COPY Dateien\*.* C:%1
    :disk2
    PAUSE Legen Sie Diskette #2, ein und drücken ENTER
    IF NOT EXIST disk2 GOTO disk2
    ECHO Kopiere disk2
    COPY Dateien\*.* C:%1
    :disk3
    PAUSE Legen Sie Diskette #3, und drücken ENTER
    IF NOT EXIST disk2 GOTO disk3
    ECHO Kopiere disk3
    COPY Dateien\*.* C:%1
    ECHO Kopieren beendet.
  Wenn eine BATCH-Datei innerhalb einer anderen BATCH-Datei aufgerufen
  wird, wird die vorherige Datei unabhängig von der Verschachtelungs-
  ebene nicht nicht fortgesetzt, sobald die aufgerufene beendet ist; dies
  wird als Verkettung bezeichnet, eine Datei verkettet sich mit einem
  anderen Programm und beabsichtigt nicht, zurückzukehren. Damit sich ein
  BATCH-Skript in dieser Hinsicht wie ein externes Programm verhält, muß
  es über den CALL-Befehl aufgerufen werden, z. B.:
  BATCH1.BAT:
    @ECHO OFF
    ECHO %0 - Zeile 2
    CALL batch2
    ECHO %0 - Zeile 4
  und
    BATCH2.BAT:
    ECHO %0 - Zeile 1

  zeigt:
    BATCH1 - Zeile 2
    BATCH2 - Zeile 1  (BATCH2!)
    BATCH1 - Zeile 4

Versteckte interne Befehle:

  Es gibt einige spezielle interne Befehle, die weder direkt sichtbar
  noch zugänglich sind. Sie sind aus zwei Hauptgründen ausgeblendet:
    1. Viele von ihnen sind interner Natur und sollten vom Benutzer
       nicht verwendet werden.
    2. Sie sind Erweiterungen der normalen BATCH-Sprache und können
       daher mit einer bestimmten Installation kollidieren. Um diesen
       Konflikt zu vermeiden, sind diese Befehle standardmäßig ausge-
       blendet und können über den ICMD-Befehl direkt zugänglich gemacht
       werden.
  Auf ausgeblendete interne Befehle kann zugegriffen werden, indem "::="
  dem Befehl vorangestellt wird. Dieses Token gibt normalerweise eine
  Bezeichnung innerhalb der BATCH-Sprache an. Aufgrund der Art der
  Bezeichnungen können es auch Kommentare sein. Aufgrund der letzteren
  Variante sehen die meisten Nicht-FreeCOM-Shells das ::= nicht und
  ignorieren daher diese Befehle.
    Beispiel: C> ::=CANCEL 30
  bricht alle derzeit aktiven BATCH-Dateien ab (beendet sie) und weist
  den Errorlevel 30 zu.

Siehe auch:

  @
  batch
  command.com/freecom
  echo
  Errorlevel
  goto
  Umgebungsvariable

  Copyright © 2006 the FreeDOS command.com team,
   2024 von W. Spiegl and die FreeDOS Hilfe angepasst.

  Diese Datei ist abgeleitet vom FreeDOS Spezifikationen-HOWTO.
  Vgl. auch die Datei H2Cpying bezüglich der Kopierbedingungen.