Widziałem @jest używany w takich kontekstach:
@echo off
@echo start eclipse.exe
Co to @znaczy?
Widziałem @jest używany w takich kontekstach:
@echo off
@echo start eclipse.exe
Co to @znaczy?
Odpowiedzi:
Oznacza to, że nie należy wyprowadzać odpowiedniego polecenia. Porównaj następujące dwa pliki wsadowe:
@echo foo
i
echo foo
Pierwsza ma tylko foojako wyjście, a druga drukuje
H:\Stuff>echo foo
foo
(przynajmniej tutaj). Jak widać, polecenie, które jest uruchamiane, jest również widoczne.
echo offwyłączy to dla całego pliku wsadowego. Jednak echo offsamo wezwanie byłoby nadal widoczne. Dlatego widzisz @echo offna początku pliki wsadowe. Wyłącz echo polecenia i nie powtarzaj polecenia, wyłączając je.
Usunięcie tego wiersza (lub zakomentowanie go) jest często pomocnym narzędziem do debugowania w bardziej złożonych plikach wsadowych, ponieważ można zobaczyć, co jest uruchamiane przed komunikatem o błędzie.
Oznacza to „nie powtarzaj polecenia na standardowe wyjście”.
Raczej dziwnie,
echo off
wyśle echo offna wyjście! Więc,
@echo off
wyłącza to automatyczne zachowanie echa - i zatrzymuje je również dla wszystkich przyszłych poleceń.
Źródło: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/batch.mspx?mfr=true
Do @wyłącza echa dla tego jednego polecenia. Bez niego echo start eclipse.exelinia będzie drukować zarówno zamierzone start eclipse.exe , a ten echo start eclipse.exewiersz.
Do echo offwyłącza echo poleceń przez domyślne.
Więc @echo offcicho wyłącza echo poleceń i tylko dane wyjściowe autora wsadu, które mają być napisane, są faktycznie napisane.
Dziedziczy znaczenie z DOS. @ :
W wersji DOS 3.3 i nowszych ukrywa echo polecenia wsadowego. Wszelkie dane wyjściowe generowane przez polecenie są wyświetlane.
Bez tego można by wyłączyć echo polecenia za pomocą echo offpolecenia, ale to polecenie zostanie powtórzone jako pierwsze.
Domyślnie plik wsadowy wyświetla swoje polecenie podczas działania. Celem tego pierwszego polecenia, które wyłącza @echo, jest wyłączenie tego wyświetlacza. Polecenie „echo off” wyłącza wyświetlanie całego skryptu, z wyjątkiem samego polecenia „echo off”. Znak „at” „@” z przodu powoduje, że polecenie odnosi się również do siebie samego.
Innym przydatnym momentem na dodanie znaku @ jest użycie FORw wierszu poleceń. Na przykład:
FOR %F IN (*.*) DO ECHO %F
Poprzedni wiersz pokazuje dla każdego pliku : wiersz polecenia, ECHOpolecenie i wynik ECHOpolecenia. Tą drogą:
FOR %F IN (*.*) DO @ECHO %F
Wyświetlany jest tylko wynik ECHOpolecenia.