Add directory to path environment variable windows

How to Add to Windows PATH Environment Variable

Works for Windows 10 or 7

If you’re a coder or programmer, you probably spend a decent amount of time using the command prompt to execute programs or compile code. In order to complete those tasks, you most likely have to use a command from a library or software package installed (like Python) on your system.

By default, most of these programs will add their own custom shortcuts to the Windows environment variables. The most used environment variable in Windows is probably the PATH variable. It basically allows you to run any executables that are located inside the paths specified in the variable at the command prompt without having to give the full path to the executable.

In this article, I’ll show you how you can add more paths to the Windows PATH variable in case you want to run executables from your own custom directories. It’s worth noting that the procedure below is for Windows 10, but it’s almost exactly the same for Windows 7 also.

Add Directories to PATH Variable

To get started, right-click on the Computer or This PC icon on the desktop and select Properties. If you don’t have that icon on your desktop already, you can add any missing desktop icons easily.

On the System dialog page, you’ll see an Advanced system settings link on the left-hand side.

This will bring up the System Properties dialog, which should already be open to the Advanced tab. Go ahead and click on the Environment Variables button at the very bottom.

On the Environment Variables dialog, you’ll see two sets of variables: one for user variables and the other for system variables. Both lists have the PATH variable, so you have to decide which one to edit.

If you only need the commands for your own user account, then edit the user variable. If you need it to work across the computer system regardless of which user is logged in, then edit the system variable. Click on Path and then click on Edit.

On the Edit environment variable dialog, you’ll see a list of all the paths that are currently in the PATH variable. As you can see, Node.js and Git already added their paths so that I can run Git commands and Node.js commands from anywhere while in the command prompt.

To add a new path, simply click on New and it’ll add a new line to the bottom of the list. If you know the path, simply type it in or copy and paste it. If you prefer, you can also click Browse and then navigate to the desired path.

To edit any path, simply select it and then click on the Edit button. You can also delete paths using the Delete button. Note that you can also move items up and down on the list. When you type a command at the command prompt, Windows has to search through each directory stored in the PATH variable to see if that executable exists or not. If you want your executable to be found faster, just move that path up to the top of the list.

Читайте также:  Очистка линукс от мусора с терминала

This can also come in handy if you have multiple versions of the same command in different paths and need to have one run instead of the other. The one that shows up higher in the list will be run when you type in the command.

Lastly, if you click on Edit text, it will load a dialog where you can edit the Path variable using the old interface where all the paths are listed in one text box.

That’s all there is to it! If you want to learn more about environment variables, make sure to check out my post on how to create your own custom environment variables. Enjoy!

Founder of Help Desk Geek and managing editor. He began blogging in 2007 and quit his job in 2010 to blog full-time. He has over 15 years of industry experience in IT and holds several technical certifications. Read Aseem’s Full Bio

Добавление каталога в переменную среды PATH в Windows

в операционных системах Windows NT я попытался добавить этот каталог в свою систему PATH переменные среды:

поэтому я добавил этот каталог с помощью «Мой Компьютер» > «Свойства» > «дополнительно» > «Переменные среды» > «путь». Я сохранил его, но когда я набрал:

на моей консоли он не показывает никаких добавленных «C:xamppphp-каталог

у меня есть два вопроса:

почему это произошло? Быть там что-то я сделал не так?

как я могу добавить каталоги в моем PATH переменная с помощью консоли или программно (через пакетный файл)?

14 ответов:

Это только изменяет реестр. Процесс не будет использовать эти значения, пока он не будет запущен после это изменение и не наследует природу своих родителей.

вы не указали, как вы начали сеанс консоли. Лучший способ убедиться в этом-выйти из системы и снова войти в систему.

  • откройте окно консоли после изменения системного пути с помощью панели управления или системных настроек.

в открывшемся окне команд.

разбив его вниз:

внимание: не пропустите создание резервной копии перед использованием этого метода
вы можете потерять данные в свой %PATH% , или добавить нерелевантный контент слияние из системных переменных
другими словами, не слепо копировать/вставить это. Используйте с осторожностью.

в Windows 7 и Windows 8 мы можем постоянно установите путь из командной строки с помощью . Чтобы добавить git к «Путь»:

обратите внимание, что эта команда может обрезать путь, который вы передаете, до 1024 символов, теряя что-либо помимо этого. В общем, обязательно используйте cmd.exe , а не command.com . Оба предоставляют командную строку. cmd.exe новее, и у него меньше ограничений. command.com старше; он имеет ограничения, такие как размер пути.

в семействе Windows 8 (8 & 8.1), вы должны запустить командную строку с правами администратора.

из-за использования %PATH% переменная, эта команда объединит системные переменные среды с пользовательскими.

вам не нужны set или setx команда, просто откройте терминал и введите:

это показывает текущее значение переменной PATH. Теперь вы хотите добавить в каталог? Просто введите:

если по какой-либо причине вы хотите очистить переменную PATH (нет путей вообще или удалить все пути в ней), введите:

обновление

как Даниал Уилсон отметил в комментарии ниже, он устанавливает путь только в текущем сессия. Для установки пути постоянно используйте setx но имейте в виду, хотя это устанавливает путь постоянно, но не в текущем сеансе, поэтому вам нужно запустить новую командную строку, чтобы увидеть изменения, подробнее здесь.

чтобы проверить, существует ли переменная среды или увидеть ее значение, используйте ECHO commnad:

в этот век PowerShell я бы редактировал путь так:

чтобы установить переменную для всех пользователей, в масштабе всей машины, последняя строка должна быть такой:

Читайте также:  Как форматнуть пк оставив windows 10

в скрипте PowerShell, вы, возможно, захотите, чтобы проверить наличие вашего C:\xampp\php перед добавлением в PATH (в случае, если он был ранее добавлен). Вы можете обернуть его в if условное.

Итак, собирая все это вместе:

поздно на вечеринку — но удобно, если вы уже находитесь в каталоге, который хотите добавить в PATH.

edit: согласно комментарию-работает со стандартным Windows cmd, но не в powershell.

для powershell the %CD% эквивалентной [System.Environment]::CurrentDirectory

Безопасный SETX

  • SETX по умолчанию обновит ваш пользователей путь.
  • SETX . /M обновить система путь.
  • %PATH% содержит системный путь с добавлением пользовательского пути

предупреждения

  1. резервное копирование PATH — SETX будет усеките ваш мусор длиной более 1024 символов
  2. не называй SETX %PATH%;xxx — добавляет системный путь в путь пользователя
  3. не называй SETX %PATH%;xxx /M — добавляет путь пользователя в системный путь
  4. чрезмерное использование пакетных файлов может привести к слепоте 1

The ss64 SETX страница есть несколько очень хороших примеров. Важно отметить, что это указывает на то, где ключи реестра для SETX vs SETX /M

инструкция по применению

добавить

добавить в систему PATH

append_system_path.cmd . должен быть запущен от имени администратора.

(это в основном то же самое, за исключением другого Key и SETX /M модификатор)

варианты

наконец, есть потенциально улучшенная версия под названием SETENV рекомендуется на странице ss64 SETX, которая разбивает настройку переменных среды пользователя или системы.

Что делать, если вы ошиблись путь с помощью setx? Лучший способ-просто через windows U. I. Панель Управления->Все Элементы Панели Управления->Система->Расширенные Настройки Системы->Переменные Среды

прокрутите вниз до Пути и выберите Изменить. Вы также можете скопировать и вставить его в свой любимый редактор, чтобы вы могли видеть весь путь и более легко редактировать его.

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

для переопределения уже включены исполняемые файлы;

помимо всех ответов, если вы хотите хороший графический инструмент для редактирования переменных среды windows, вы можете использовать Быстрый Редактор Среды

попробуйте! его безопасно использовать и потрясающе!

по пункту 2 Я использую простой пакетный файл, который заполняет PATH или другие переменные окружения для меня. Таким образом, загрязнение переменных среды по умолчанию отсутствует. Этот пакетный файл доступен отовсюду, поэтому я могу ввести:

Вы можете проверить более подробную информацию об этом простой подход здесь.

проверка вышеуказанных предложений в Windows 10 LTSB и с проблеском на контурах «справка» (которые можно просмотреть при вводе » command/?’on the cmd), привел меня к вывод о том, что команда PATH изменяет значения системных переменных среды Path только для текущего сеанса, но после перезагрузки все значения сбрасываются по умолчанию — так же, как и до использования команды PATH.

С другой стороны, использование команды SETX с правами администратора-это путь более мощный, он изменяет эти значения навсегда (или, по крайней мере, до следующего использования этой команды или до следующего манипулирования этими значениями вручную GUI. ).

но для ясности я подумал, что совместное использование здесь лучшее использование синтаксиса SETX это сработало для меня может помочь кому-то однажды:

где любой знак равенства ‘ = ‘ следует избегать, и не беспокойтесь пространства! нет необходимости вставлять дополнительные кавычки для пути что содержит пробелы внутри него-знак разделения’; ‘ выполняйте задание.

Читайте также:  Red hat linux ��������� �������� ����������

ключевое слово PATH, которое следует за SETX, определяет, какой набор значений должен быть изменен среди возможных значений переменных среды системы, а %PATH% (путь слова, окруженный знаком процента) внутри кавычек, говорит ОС оставить существующие значения пути как они есть и добавить следующий путь (тот, который следует за знаком разделения ‘;’ ) к существующим значениям.

лучшей альтернативой панели управления является использование этой бесплатной программы из sourceforge под названием Pathenator:

однако, это только РАБОЧИЕ для системы, которая имеет Dot.Net 4.0 или выше, такие как windows 7,8 или 10.

в командной строке вы говорите Cmd использовать командную строку проводника, предваряя ее start .

так start Yourbatchname .

обратите внимание, вы должны зарегистрироваться, как если бы его имя batchfile.exe .

программы и документы могут быть добавлены в реестр, поэтому ввод их имени без их пути в диалоговом окне Пуск — Выполнить или ярлык позволяет Windows, чтобы найти их.

это общий reg-файл. Скопируйте приведенные ниже строки в новый текстовый документ и сохраните его как anyname.рег. Отредактируйте его с помощью своих программ или документов.

в пути используйте \ для разделения имен папок в ключевых путях, поскольку regedit использует один \ для разделения его ключевых имен. Все reg файлы начинаются с REGEDIT4. Точка с запятой превращает строку в комментарий. Символ @ означает присвоение значения ключу, а не именованному значению.

файл не должен существовать. Это может быть использовано для набора слова.exe, чтобы открыть Winword.исполняемый.

введя start batchfile начнется iexplore.исполняемый.

вам уже говорили о пути в другом ответе. Также смотрите doskey /? для cmd макросов (они работают только при вводе).

вы можете запускать команды запуска для CMD. Из Windows Recource Kit Техническая Справка

Автозагрузка

описание

содержит команды, которые выполняются при каждом запуске Cmd.исполняемый.

adding directory to path environment variable

My requirement is to add one of the directory to path environment variable in windows at the time of installing my application and remove the same from path environment variable at the time of uninstallation using batch file.

In one of the stackoverflow answer related to this suggested the following to add a directory to path environment variable.

It is adding to path variable but when I try to add one more, it overwrites the existing value which I have added. How to avoid this?

How to remove the directory path which I have added from path environment variable?

2 Answers 2

You should be able to use the existing value of it like this:

To remove it you could probably do something like this:

Which would substitute the path it was given with nothing to delete it.

You need to check if user’s part of path variable is empty, e.g. for adding a directory as follows:

Note that I use reg add instead of setx command. See also this Rojo’s answer for exhaustive explanation.

Output.

Above output shows that the only check if a key is empty does not suffice as running it twice would add the same directory twice as well.

However, checking if a path key (user or machine-wide) contains a particular directory is not such simple task. For instance, some entries in path contain a trailing \ backslash while others don’t. Moreover, some entries in a path registry value of REG_EXPAND_SZ could be tangled in other environment variables e.g. %ProgramFiles%\SomeApp instead of C:\Program Files\SomeApp etc.

The following complex script could help to analyse Windows path environment variables (note that it could show incorrect values if a path contains an exclamation mark ! due to enabled delayed expansion):

Оцените статью