@set variable=local value
@echo After setlocal @echo
%variable%
@endlocal
@echo After endlocal @echo
%variable%
Осы сценарий жұмысының нәтижесінде консольға келесідей
хабарламалар шығарылатын болады:
Before setlocal
global value
After setlocal
local value
After endlocal
global value
Жергілікті блоктан шыққаннан кейін пайдаланушы жасаған барлық
өзгерістер еленбей қалды, ал айнымалылардың мәндері қайта қалпына
келді.
Дәл Linux секілді пайдаланушы тек кіріктірілген және жергілікті
айнымалыларға ғана емес, арнайы жүйелік айнымалыларға да
қолжетімді. Бұл айнымалылар шақырылатын сценарийде берілетін
параметрлерге қолжетімділікті орындауға мүмкіндік береді.
Windows командалық интерпретаторда арнайы айнымалылар
%0..%9 анықталған. Айнымалы %0 сценарийдің орындалудағы атымен
ығыстырылады, ал %1..%9 сценарий параметрлерінің алғашқы тоғыз
параметрлермен ығысады.
Тоғызыншыдан кейінгі параметрге қолжетімділікке ие болу үшін
shift команданы қолданылады. Оның қызметі BASH ішіндегі аттас
команданың тәртібіне ұқсаған: бұл команданы бір рет шақырғаннан
кейін айнымалы %1 екінші параметрмен салыстырылады, ал %2 —
үшіншімен және т.б.
Барлық параметрлердің тізімін алу үшін арнайы кіріктірілген
айнымалы
%*
қолданылады.
shift
команданы
позициялық
айнымалылардың %1, %2 және т.б. мәндеріне ғана ықпал етіп
қоймайды, ол %
*
айнымалымен қайтып келетін мәнге де ықпал ететінін
ескеру қажет.