1

私が作成したコマンドの簡略化された(-ish)コマンドプロンプトのようなバッチプログラムを作成しています。ただし、致命的なエラーとして絞り込んだバッチコーディングのこの行については疑問に思っています(プログラムを実行しているcmd.exeが閉じます)行:echo One(1) application is within this folder. そのセクションを実行するコマンドを入力してそのセクションに移動しようとすると、次のように表示されます。application was unexpected at this timeその後、すぐに閉じます。また、「アプリケーション」を「プログラム」に置き換えてみましたが、役に立ちませんでした。私は疑問に思っていました: 不思議なエコー パラメータ/ルールのすべては何ですか? たとえばecho text >> name.extention、可能ですが、入力してもandecho /?以外には何も表示されません。@echo on/offecho text

他の言語では () 内の引数を使用して関数を呼び出すために使用されるため、() と関係があると思いますが、"Oneこれはエコー内にあり、文字どおりに表示することのみを目的としているためです。また、バッチにこのように呼び出すことができる関数があるとは思いません (VB、lua、Java、および C++ [使用するもの] でしか見たことがありません)。

プログラムがこの行で失敗した理由、および/または (できれば) 他のすべての隠されたエコー規則を知っている場合は、それらをリストしてください。それらは本当に知っておく必要があります(特にechoコマンドについて、このWebサイト[および他のWebサイト]で非常に多くの質問を見てきました)。

4

1 に答える 1

3

あなたが持っているブロックステートメント内で、次のようにキャレットでif expression (whatever1) else (whetever2)閉じ括弧をエスケープする必要があります:)^^)

エスケープは)、then/else の終了ではないことをバッチに伝えます

于 2013-06-29T16:28:49.743 に答える