Я пытаюсь написать 2 инструмента BATCH, которые изменяют путь к моей системной переменной. Первый должен добавить пункт назначения перед путем, но перед этим сохранить старый путь в текстовом файле, а второй BATCH-файл должен загрузить путь из текстового файла и заменить путь сохраненным, чтобы снова восстановить старый путь. .
@echo. 2>%date:~0%_PATH.txt
@echo %PATH% >> %date:~0%_PATH.txt
@echo "This tool will change the system variable PATH"
@echo "if you want to continue, press any key."
@echo "To cancel press CTRL+C"
@pause
@setx /m PATH "C:\MinGW\bin;%PATH%"
@echo.
@echo.
@echo "The System variables has been set"
@echo "Your original PATH variable was saved to: %date:~0%_PATH.txt"
@pause
Это первый пакетный файл, который должен добавить C:\MinGW\bin перед PATH. (Дело не в том, что после того, как я запустил командный файл, появилось гораздо больше, чем просто пункт назначения.
@ECHO OFF
ECHO "You are about to restore your system variable PATH to a previous state!"
ECHO "If you want to preform this step, press any key."
ECHO "To cancel the process, press CTRL+C";
ECHO.
SET index=1
SETLOCAL ENABLEDELAYEDEXPANSION
FOR %%f IN (*.*) DO (
SET file!index!=%%f
ECHO !index! - %%f
SET /A index=!index!+1
)
SETLOCAL DISABLEDELAYEDEXPANSION
SET /p selection="Please select by typing the number which file you want to recover your PATH:"
SET file%selection% > nul 2>&1
IF ERRORLEVEL 1 (
ECHO Invalid number selected!!
EXIT /B 1
)
CALL :RESOLVE %%file%selection%%%
ECHO Selected file name: %file_name%
GOTO :EOF
:RESOLVE
SET file_name=%1
GOTO :EOF
@setx /m PATH %file_name%
И это пакетный файл восстановления, который не будет выбирать выбранный мной файл.
Я надеюсь, что кто-нибудь может мне помочь. Спасибо