Ich habe gesehen, @
wird in solchen Zusammenhängen verwendet:
@echo off
@echo start eclipse.exe
Was @
bedeutet hier?
quelle
Ich habe gesehen, @
wird in solchen Zusammenhängen verwendet:
@echo off
@echo start eclipse.exe
Was @
bedeutet hier?
Es bedeutet, den jeweiligen Befehl nicht auszugeben. Vergleichen Sie die folgenden zwei Batchdateien:
@echo foo
und
echo foo
Ersteres hat nur foo
als Ausgabe, während letzteres druckt
H:\Stuff>echo foo
foo
(zumindest hier). Wie zu sehen ist, ist auch der ausgeführte Befehl sichtbar.
echo off
schaltet dies für die vollständige Batch-Datei aus. Der echo off
Anruf selbst wäre jedoch weiterhin sichtbar. Aus diesem Grund sehen Sie @echo off
am Anfang von Batch-Dateien. Schalten Sie Befehl Echo und do echo den Befehl nicht drehen sie ab.
Das Entfernen (oder Auskommentieren) dieser Zeile ist häufig ein hilfreiches Debugging-Tool in komplexeren Batchdateien, da Sie sehen können, was vor einer Fehlermeldung ausgeführt wird.
Es bedeutet "Geben Sie den Befehl nicht an die Standardausgabe weiter".
Eher seltsam,
echo off
wird echo off
an die Ausgabe senden ! So,
@echo off
Setzt dieses automatische Echo-Verhalten aus - und stoppt es auch für alle zukünftigen Befehle.
Quelle: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/batch.mspx?mfr=true
Das @
Deaktiviert das Echo für diesen einen Befehl. Ohne sie echo start eclipse.exe
würde die Zeile sowohl die beabsichtigte start eclipse.exe
als auch die echo start eclipse.exe
Zeile drucken .
Das echo off
deaktiviert das Echo des Standardbefehls.
@echo off
Deaktiviert also stillschweigend das Echo des Befehls und gibt nur den Batch-Autor aus, der geschrieben werden soll.
Es erbt die Bedeutung von DOS. @ :
In DOS Version 3.3 und höher wird das Echo eines Stapelbefehls ausgeblendet. Jede vom Befehl erzeugte Ausgabe wird wiedergegeben.
Ohne sie könnten Sie das Echo des echo off
Befehls mit dem Befehl deaktivieren , aber dieser Befehl wird zuerst wiedergegeben.
Standardmäßig zeigt eine Batchdatei ihren Befehl während der Ausführung an. Der Zweck dieses ersten Befehls, den @echo ausschaltet, besteht darin, diese Anzeige auszuschalten. Der Befehl "Echo aus" schaltet die Anzeige für das gesamte Skript aus, mit Ausnahme des Befehls "Echo aus". Das "at" -Zeichen "@" vorne bewirkt, dass der Befehl auch auf sich selbst angewendet wird.
quelle
Eine weitere nützliche Zeit, um @ einzuschließen, ist die Verwendung
FOR
in der Befehlszeile. Beispielsweise:Die vorherige Zeile zeigt für jede Datei : die Eingabeaufforderung, den
ECHO
Befehl und das Ergebnis desECHO
Befehls. Diesen Weg:Es wird nur das Ergebnis des
ECHO
Befehls angezeigt.quelle
Sie können @ in einen 'scriptBlock' wie folgt einfügen:
und vor allem nicht das :)
quelle