2

私はバッチファイルの初心者です。だから私は基本的なバッチファイルを作っていて、それをテストしたところ、The syntax of the command is incorrect.それは正しいと確信しています。いくつかの待機スクリプトを (VBS を使用して) 配置したため、コーディングの IF 部分にあることがわかりました。REM はまだ使っていないので、何が問題なのかわかりません。書いた内容はこんな感じです。

@echo off

b:
set a=1

IF %a%==1 goto :a

:a

echo Test

pause

goto :b

コーディングには他にも多くのIF %variable%==numberステートメントがあり、それらはすべて正常に機能します。何が起こっている?

4

3 に答える 3

1

まず最初に、ラベルbの反対側にコロンがあり、デフォルト ドライブを 2 番目のフロッピーに設定しようとするコマンドになっています :-)

次に、厳密には必要ではありませんが、ラベルは独自の行に配置することを好みます。

    @echo off
:b
    set a=1
    IF %a%==1 goto :a
:a
    echo Test
    pause
    goto :b

これを実行すると、次のようになります。

C:\Users\Pax\Documents> testprog
Test
Press any key to continue . . . <ENTER>
Test
Press any key to continue . . . <ENTER>
Test
Press any key to continue . . . <ENTER>
Test
Press any key to continue . . . <CTRL-C>
Terminate batch job (Y/N)? y

C:\Users\Pax\Documents> _
于 2012-04-19T03:15:59.837 に答える
0
IF %a%==1 goto :a

する必要があります

IF %a%==1 goto a

さらにヘルプが必要な場合は、ここで解決策を見つけました。http: //www.computerhope.com/batch.htm 必要なすべての情報が含まれています。

于 2012-04-19T03:13:29.217 に答える
0

paxdiablo言ったように、それは必要ではないかもしれませんが、タグに独自の行を与えるのに役立ちます。他にも必要ではないかもしれない小さなことがあるかもしれませんが、少し整理するのに役立ちます。たとえば、固定されるのはそのようなものです。

@echo off
:b
set a=1
IF %a%==1 goto a
:a
echo Test
pause
goto b

また、は またはと書くことができるのと同じようIF %a%==1 goto a に変更できます などでタイトルを付けることができますIF %a% EQU 1 goto a goto goto :a goto a Title title of window

楽しい探索。

于 2013-12-07T06:28:04.480 に答える