#windows #batch-file #cmd #system #environment
#Windows #пакетный файл #cmd #система #Окружающая среда
Вопрос:
Я пытаюсь создать программу CLI (в основном компилятор, подобный node) и создаю установщик, проблема в том, что я не могу добавить папку в Path, я пытался с:
set PATH="%PATH%;F:n-compile"
Затем я перешел к
Control Panel
>> Sytem and Security
>> System
>> Advanced system settings
>> Environment Variables
>> PATH
>> Edit...
и я не вижу F:n-compile
ни системы, ни ПУТИ Пользователя. Я пытаюсь заставить его делать это автоматически, как установщик будет делать с Bash, если у кого-то есть решение, которое я мог бы использовать для этого Node.js это тоже было бы очень полезно.
Комментарии:
1. Ну, для начала, ваша команда
set PATH="%PATH%;F:n-compile"
неверна, вероятно, она должна была быть,Set "Path=%Path%F:n-compile;"
, чтобы двойные цитаты не были включены. ОднакоSet
переменные определяются или отменяются только локально, т. Е. В контекстеcmd.exe
сеанса, в котором он выполняется. Чтобы создать переменную для сохранения вне этогоcmd.exe
сеанса, взгляните наsetx
команду. Откройте командную строку, введитеsetx /?
, нажмите[ENTER]
клавишу и прочитайте представленную информацию.2. @Compo Так это должно выглядеть
SETX PATH "%PATH%;F:n-compile"
?3.
SETX PATH "%PATH%;F:n-compile"
для меня все отлично сработало, спасибо!4. Я сказал вам прочитать представленную информацию!
%Path%
Значение вашей переменной уже должно заканчиваться на;
so, которое вы должны использовать%PATH%F:n-compile;
. Однако я добавлю, что вы никогда не должны использоватьsetx
with%Path%
. В отличие от других переменных,%Path%
представляет собой объединение имен как системных, так и пользовательских переменных средыPath
. Мой совет заключается в том, что вы не используете правильный метод как часть вашей установки, чтобы сделать это; и мое мнение таково, что вам никогда не следует добавлять что-либо в среду, если вы сначала не сообщите конечному пользователю и не предложите им возможность отказаться.5. То, что вы делаете, неправильно! Я сказал вам не использовать его. Вы никогда не должны разрешать какой-либо код, который делает это на чужом компьютере или даже на своем собственном, с более чем одним пользователем .