Saya melihat @digunakan dalam konteks seperti:
@echo off
@echo start eclipse.exe
Apa yang dimaksud di @sini?
Saya melihat @digunakan dalam konteks seperti:
@echo off
@echo start eclipse.exe
Apa yang dimaksud di @sini?
Jawaban:
Itu berarti tidak mengeluarkan perintah masing-masing. Bandingkan dua file batch berikut:
@echo foo
dan
echo foo
Yang pertama hanya foosebagai keluaran sementara yang terakhir dicetak
H:\Stuff>echo foo
foo
(setidaknya di sini). Seperti dapat dilihat, perintah yang dijalankan juga terlihat.
echo offakan menonaktifkannya untuk file batch lengkap. Namun, echo offpanggilan itu sendiri masih akan terlihat. Itulah sebabnya Anda melihat @echo offdi awal file batch. Matikan gema perintah dan jangan gema perintah mematikannya.
Menghapus baris itu (atau berkomentar) sering kali merupakan alat debugging yang bermanfaat dalam file batch yang lebih kompleks karena Anda dapat melihat apa yang dijalankan sebelum pesan kesalahan.
Ini berarti "jangan gema perintah ke output standar".
Agak aneh,
echo off
akan mengirim echo offke output! Begitu,
@echo off
menonaktifkan perilaku gema otomatis ini - dan menghentikannya untuk semua perintah di masa mendatang juga.
Sumber: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/batch.mspx?mfr=true
The @menonaktifkan menggemakan untuk itu satu perintah. Tanpa itu, echo start eclipse.exejalur akan mencetak kedua dimaksudkan start eclipse.exe dan para echo start eclipse.exeline.
The echo offbergantian off dengan-default perintah bergema.
Jadi secara @echo offdiam-diam mematikan perintah yang bergema, dan hanya output yang ingin ditulis penulis batch yang benar-benar ditulis.
Itu mewarisi makna dari DOS. @ :
Dalam DOS versi 3.3 dan yang lebih baru, menyembunyikan gema dari perintah batch. Setiap output yang dihasilkan oleh perintah digaungkan.
Tanpa itu, Anda bisa mematikan perintah yang bergema menggunakan echo offperintah, tetapi perintah itu akan digaungkan terlebih dahulu.
Secara default, file batch akan menampilkan perintahnya saat dijalankan. Tujuan dari perintah pertama ini yaitu @echo off adalah untuk mematikan tampilan ini. Perintah "echo off" mematikan tampilan untuk seluruh skrip, kecuali untuk perintah "echo off" itu sendiri. Tanda "at" "@" di depan membuat perintah juga berlaku untuk dirinya sendiri.
Waktu lain yang berguna untuk menyertakan @ adalah ketika Anda menggunakan FORdi baris perintah. Sebagai contoh:
FOR %F IN (*.*) DO ECHO %F
Baris sebelumnya ditampilkan untuk setiap file : prompt ECHOperintah, perintah, dan hasil dari ECHOperintah. Cara ini:
FOR %F IN (*.*) DO @ECHO %F
Hanya hasil dari ECHOperintah yang ditampilkan.