50835


以下はWindowsのコマンドプロンプトで行った入力とその出力です（`>`の行が入力）。

[code]

    >ver
    
    Microsoft Windows [Version 10.0.17134.407]
    
    >set FOO=BAR=BAZ
    
    >echo %FOO%
    BAR=BAZ
    
    >echo %FOO=BAR%
    BAZ
    
    >set BAZ=BAR=FOO
    
    >echo %BAZ%
    BAR=FOO
    
    >echo %BAZ=BAR%
    %BAZ=BAR%
    
[/code]

なぜ`echo %FOO=BAR%`で`BAZ`が返って`echo %BAZ=BAR%`で`FOO`が返らないのでしょうか？  
（どちらかというと後者の方が正しい動きに思えますが……バグ？ 未定義動作？）


CC BY-SA 4.0
2018-12-02T13:35:00.677
50833
2018-12-02T18:38:04.017
2988
question
windows コマンドプロンプト
コマンドプロンプトでイコールを含む名前の変数が定義できることがある理由


windows10 1803で再現しましたが、windows7やW10 1809では再現しません。こっそり直したのでしょうか。


CC BY-SA 4.0
2018-12-02T18:38:04.017
50835
2018-12-02T18:38:04.017
31146
50833
answer