web-dev-qa-db-ja.com

バッチファイルのアットマーク(@)とは何ですか?

Windows/DOSバッチスクリプトに慣れている人は、次の行を認識します。

@echo off

何日もの間、私は@echo offがバッチの先頭に書かれることを意図しているという感情に満足していました。

しかし、最近、私は accrossになりました このような行をしました:

@php foo bar

そして 別の行 このように:

@call \\network\folder\batch.bat

これは、@が単にechoモード切り替え以上のものを持っているという疑念を強めました。ただし、@Windows XP:コマンドラインリファレンスA-Z にリストされていません。これをリファレンスとして使用しようとしているため、これに関する明確な情報を見つける方法がわかりません。

バッチ内の@サインとは何ですか、その用語は何ですか、それは何をしますか?

85
n611x007

アットマーク-@

@ symbolは、コマンドプロセッサに冗長性を低くするよう指示します。実行中のコマンドや実行に関連するプロンプトを表示せずに、コマンドの出力のみを表示します。使用する場合、コマンドの先頭に追加されるため、「@」とコマンドの間にスペースを空ける必要はありません。

「echo」を「off」に設定すると、「echo」を「off」に設定するとこの動作が自動になるため、「@」を使用する必要はありません。通常、「エコー」は、スクリプトの実行開始時にデフォルトで「オン」に設定されます。これが、エコーをオフにする動作を表示せずにエコーをオフにするために「@echo off」が一般的に使用される理由です。

echo verbose
@echo less verbose
pause
128
Sunny