Может ли script.bat внести изменения в переменную среды Windows PATH

Я пытаюсь написать скрипт, который при нажатии добавит пару записей в переменную среды PATH в Windows вместо внесения изменений вручную. Я вижу, что файлы .bat все время используются в Windows по разным причинам, так может ли сценарий .bat помочь мне с чем-то подобным?

На самом деле мне нужно скачать ZIP из местоположения в Интернете, распаковать его в указанное место, а затем обновить PATH в переменной среды. Никогда не делал этого раньше, поэтому любые намеки приветствуются.

Ответы на вопрос(1)

Решение Вопроса

вы можете использовать команду SETX, например,

setx path "%PATH%;C:\New Folder" 

Для получения более подробной информации о% PATH% и других переменных для доступа к системной папке, обратитесь кhttp://vlaurie.com/computers2/Articles/environment.htm

 Marcus Pope16 июл. 2012 г., 18:37
Исправленный URL:computerhope.com/issues/ch000549.htm
 Julian Mann21 июн. 2012 г., 18:46
Я попробовал это, и значение% PATH% (системная переменная) добавляется к «C: \ New Folder». Все идет нормально. Однако он сохраняется как переменная пути пользователя. Затем переменная пути составляется из системного пути, добавленного к пользовательскому пути. Результатом является то, что все каталоги системного пути находятся там дважды, и «C: \ New Folder» застрял в конце. И в следующий раз, когда вы пытаетесь что-то добавить, вы получаете системные каталоги 3 раза и так далее ...
 Julian Mann16 июл. 2012 г., 19:11
@ Маркус спасибо за информацию. В моем случае я давал скрипт bat пользователям (у которых нет прав администратора), чтобы они могли указать свои пути, чтобы указать на мое программное обеспечение. Это то, что довольно легко сделать в bash в системе на основе Unix. Если переменной там нет, установите ее, в противном случае добавьте к ней. Тот факт, что ПУТЬ сделан из 2 частей на окнах, бросает гаечный ключ в работах.
 SSIsyphe07 дек. 2017 г., 17:02
ВНИМАНИЕ! SETX смертельно опасен, поскольку обрезает PATH до 1024 символов (да, мы в 2017 году, Windows 10). Для меня его использование заставило меня потерять часть моего ПУТИ и 2 часа моего времени. Не актуальное решение, кроме случаев, когда вы ищете проблему ...
 Marcus Pope16 июл. 2012 г., 18:27
@JulianMann Вы, наверное, ищете/M переключатель, который устанавливает системную среду вместо пользовательской среды. Многократный запуск определенно дублирует информацию, поскольку% PATH% - это переменная, ссылающаяся на текущую среду, которую вы только что изменили, - она ​​добавляет данные и не предназначена для многократного изменения. Я рекомендую редактировать путь var вручную, чтобы удалить дубликаты <computerhope.com/issues/ch000549.htm> а затем запустить команду только один раз. Обязательно выполните команду с правами администратора, если вы используете/M флаг.
 Mofi31 мая 2019 г., 13:55
Для получения дополнительной информации о том, как изменить постоянное хранилищепользователь или жесистема PATH смотри напримерПочему другие пути к папкам также добавляются в системную переменную PATH с помощью SetX, а не только с указанным путем к папке? а такжеДобавление текущего каталога в путь Windows навсегда а такжеКак найти и заменить строку в переменной окружения PATH? и все, на что ссылаются эти ответы.
 Mofi31 мая 2019 г., 13:44
НЕТ НЕТ и еще разНЕТ, Эта линияразвращает пользователь PATH переменная окружения. Оно используетместный PATH со всеми путями к папкамсистема а такжепользователь PATH со всеми переменными среды, расширенными для установкипользователь PATH сC:\New Folder прилагается. Эта линия действительно, действительноплохой и никогда не должен использоваться кем-либо, читающим этот ответ. Это ужасно. Использованиеместный PATH установитьпользователь или жесистема PATH это абсолютный НЕТ ИДЕТ, НИКОГДА.

Ваш ответ на вопрос