| Zweck: | Aktivieren oder deaktivieren Sie das Echo der Batchdatei oder der Befehlszeile, zeigen Sie den Echo-Status auf stdoutan , oder geben Sie eine Meldung auf stdout aus. |
| Format: | ECHO [ON | OFF | message] |
message Anzuzeigender Text.
Siehe auch die Befehle ECHOS, ECHOSERR, ECHOERR, ECHOX, ECHOXERR, SCREEN, SCRPUT, TEXT und VSCRPUT, sowie die interne Variable _ECHO.
Verwendung:
Der ECHO-Befehl hat zwei nicht miteinander verbundene, unabhängig voneinander funktionierende Zwecke:
Wenn das Befehlszeilenecho aktiviert ist, wird jeder Befehl auf stdout angezeigt , nachdem er vollständig geparst, Aliase, Funktionen und Variablen expandiert wurden, aber bevor er ausgeführt wird.
Echoing-Steuerung
TCC steuert das Echo der Befehlszeile in Batch-Dateien und an der interaktiven Eingabeaufforderung unabhängig voneinander.
Durch die Ausführung von ECHO ON an der Eingabeaufforderung wird das Echo an der Eingabeaufforderung aktiviert, während ECHO OFF das Echo an der Eingabeaufforderung deaktiviert. In der Befehlszeile ist ECHO standardmäßig auf OFF gesetzt. Die Befehlszeilen-ECHO-Funktion ist besonders nützlich, wenn Sie lernen, wie man erweiterte Funktionen verwendet.
In ähnlicher Weise aktiviert die Ausführung von ECHO ON in einer Batch-Datei das Echo, während ECHO OFF das Echo von Batch-Datei-Befehlen deaktiviert.In Batchdateien istECHO standardmäßig auf ON eingestellt. Der aktuelle ECHO-Status wird an aufgerufene Batchdateien vererbt. Sie können die Standardeinstellung mit dem Befehl SETDOS /V0 oder der Konfigurationsoption Batch Echo auf OFF ändern .
Unabhängig vom jeweiligen Echo-Status werden Befehle, denen das at-Zeichen @ vorangestellt ist, nicht geechot.
Anzeige des Echostatus
Um den aktuellen Echo-Status anzuzeigen, verwenden Sie den Befehl ECHO ohne Parameter. Je nachdem, wo der ECHO-Befehl ausgeführt wird, wird entweder der Echo-Status der Batch-Datei oder der Befehlszeile angezeigt. Alternativ können Sie auch den Wert der internen Variablen _ECHO abfragen .
Wenn der ECHO-Befehl eine Nachricht enthält (das gesamte Befehlsende, ohne Umleitung oder Piping, falls vorhanden), und die Nachricht weder das Wort ON noch OFF enthält (obwohl sie diese Wörter enthalten kann), wird die Nachricht vollständig geparst und dann auf stdout angezeigt, unabhängig vom jeweiligen Echo-Status. Jede Anzeige, die an stdout gesendet wird, nachdem die Nachricht angezeigt wurde, beginnt in einer neuen Zeile.
Regeln für die Anzeige
•Das erste Leerzeichen nach dem Befehlsnamen wird ignoriert.
•Nachfolgende Leerzeichen in der Nachricht werden ignoriert.
•Funktionen und Variablen, die nicht in Anführungszeichen eingeschlossen sind, werden ausgewertet.
•Um Sonderzeichen, z. B. < | >, in die Nachrichteinzuschließen , schließen Sie sie in doppelte Anführungszeichen oder Hochkommata ein (siehe Quotierung von Parametern) oder stellen Sie ihnen das Escape-Zeichen voran , oder verwenden Sie die Option /X des SETDOS-Befehls.
•Um %anzuzeigen , können Sie abwechselnd zwei %-Zeichen für jedes anzuzeigende Zeichen verwenden , z. B.%%
•Um nachfolgende Leerzeichen anzuzeigen, schließen Sie sie entweder in Anführungszeichen ein oder hängen Sie ein Paar Anführungszeichen dahinter an, z. B.echo trailers ``
•Das ASCII-Zeichen NULkann nicht in eine Nachricht eingefügt werden .
•Wenn stdout die Konsole ist, wird der Cursor nach der Ausgabe derNachricht in der aktuellen Zeile an den Anfang der nächsten Zeile bewegt.
•Wenn stdout eine Datei ist, wird die Sequenz CR LF an die Nachrichtangehängt .
Um eine leere Zeile anzuzeigen, verwenden Sie eine der folgenden Formen:
echo `` (zwei aufeinanderfolgende Anführungszeichen), oder
echo. (spezielle Syntax für Kompatibilität mit CMD).
Beispiele:
Mit diesem Befehl wird eine Meldung angezeigt:
echo Verarbeitung Ihrer Druckdateien...
Der Befehl
echo Dieser Text ist um 3 Leerzeichen eingerückt ``
zeigt 3 führende und 3 nachfolgende Leerzeichen an.