Cum de a trece parametrii între ghilimele în

S-ar părea că ar putea fi mai ușor decât să scrie un fișier .bat? Într-adevăr, nimic nu fantezie - amintesc trei sau patru cuvinte cheie și mai departe. Dar, se pare, chiar simplu lot-sintaxa poate prezenta propriile surprize. Personal, am fost un pic surprins să vadă ceva de genul:

Pentru cei care nu înțeleg problema, voi explica printr-un exemplu.
Să presupunem că aveți un fișier batch care ia un parametru (de exemplu, numele de fișier) și apoi, în procesul de punere în aplicare, în conformitate cu setările pentru anumite aplicații.

Se pare ca acest lucru:

Deci, în primul caz, fișierul batch va funcționa în mod corespunzător în cazul în care un parametru va fi transferat într-un șir de caractere cu spații, dar fără ghilimele (acest lucru, în general, este de înțeles), iar în al doilea caz, acesta nu va funcționa corect dacă este orice șir cu citate vor fi transmise deoarece myprogram.exe obține această setare încadrată de două perechi de ghilimele.
Pentru a rezolva problema, pur și simplu prin intermediul lotului „limba.“ Este suficient între semnul sută, iar numărul de parametri pentru a plasa un tilda, care va elimina ghilimelele (dacă este cazul) a parametrului a trecut.

Ca rezultat, obținem:

Bănuiesc că această decizie este chiar descrisă în oricare dintre sintaxă lot-HELP'e. Dar cine a citit atunci?