@echo off rem какой путь нужно дописать в переменную Path set addtopath=%ProgramFiles%\7-Zip rem извлечение текущего содержимого переменной Path
rem !ВАЖНО! - в кач-ве разделителя нужно указать только символ табуляции rem (ASCII-код символа после знака "равно" в выделенном фрагменте должен быть 09) for /F "tokens=3 delims= " %%j in ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path') do (set curpath=%%j) rem проверка наличия дописываемого значения в переменной Path (для избежания дублирования) for /F %%j in ('echo %curpath% ^| find /C /I "%addtopath%"') do (set isinpath=%%j) rem если дописываемого пути нет в переменной Path, то дополняем ее if %isinpath% == 0 ( reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d "%curpath%;%addtopath%" /f )