Windows перечитать переменную path

Windows перечитать переменную path

Возможно ли в Win менять значения переменных окружения буз перезагрузки?

Да и вообще, существует ли удобный инструментарий для работы с ними. Стандартный похож на издевательство ибо:
— если переменная длинная и является перечислением (типа PATH), то фиг в ней что найдешь в этом маленьком окошке, который предлагается для ее редактирования
— чтобы ввести новую переменную нужно нажать Добавить, нужно что-то написать в очень маленьком окошке и нажать ОК

IMHO обычный текстовый файл был бы и то удобнее, и не было бы очередной проблемы

— резервного копирования эих переменных

Кстати, почему после изменения переменной окрыжения нужно обязательно перезагружаться иначе она не вступит в силу? Что за такие важные структуры инициализуруются в windows internals, что я не могу прописать путь где ОС будет искать файлы без ее перезагрузки? Бред? Или я что-то не понимаю?

Кроме того надоели такие вещи:

После установки компилятора необходимо проверить, что в переменной окружения PATH прописан путь:
bin\i386-win32\;
Причём, он должен там быть раньше, чем пути к остальным FPC, если их в системе несколько. Кроме того, если в системе установлен, например, MinGW, то, если, в PATH путь к нему прописан раньше, чем к FPC, то будет использован не ld из FPC, а ld из MinGW и ничего собрать не удастся.

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

p.s. Linux не предлагать

От: Sergeant_BY
Дата: 04.12.07 07:07
Оценка: 4 (1)

DAS> После установки компилятора необходимо проверить, что в переменной окружения PATH прописан путь:
DAS> bin\i386-win32\;
DAS>Причём, он должен там быть раньше, чем пути к остальным FPC, если их в системе несколько. Кроме того, если в системе установлен, например, MinGW, то, если, в PATH путь к нему прописан раньше, чем к FPC, то будет использован не ld из FPC, а ld из MinGW и ничего собрать не удастся.

От: DOOM
Дата: 04.12.07 07:11
Оценка: 2 (1)

Здравствуйте, DemAS, Вы писали:

DAS>Возможно ли в Win менять значения переменных окружения буз перезагрузки?
Конечно.

DAS> Да и вообще, существует ли удобный инструментарий для работы с ними. Стандартный похож на издевательство ибо:
DAS> — если переменная длинная и является перечислением (типа PATH), то фиг в ней что найдешь в этом маленьком окошке, который предлагается для ее редактирования
DAS> — чтобы ввести новую переменную нужно нажать Добавить, нужно что-то написать в очень маленьком окошке и нажать ОК

DAS> IMHO обычный текстовый файл был бы и то удобнее, и не было бы очередной проблемы

DAS> — резервного копирования эих переменных
Ну тут да. Косяк. Можно напрямую через реестр, если этот способ можно назвать удобным.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment — это системные переменные
HKEY_CURRENT_USER\Environment — пользовательские

Читайте также:  The virtualbox linux kernel driver vboxdrv is either

Кроме того, в Support Tools’ах есть утилита setx, которая, в отличие от set позволяет делать постоянные изменения в переменных окружения.

DAS> Кстати, почему после изменения переменной окрыжения нужно обязательно перезагружаться иначе она не вступит в силу? Что за такие важные структуры инициализуруются в windows internals, что я не могу прописать путь где ОС будет искать файлы без ее перезагрузки? Бред? Или я что-то не понимаю?
Видать что-то не понимаешь. В винде, как и во многих других ОС, окружение привязано к процессу — поэтому, чтобы отразить изменения в окружении надо перезапустить процесс. Т.е. поменял PATH, перезапусти cmd.exe и он уже будет с новыми путями.

DAS> Кроме того надоели такие вещи:

DAS>

DAS> После установки компилятора необходимо проверить, что в переменной окружения PATH прописан путь:
DAS> bin\i386-win32\;
DAS>Причём, он должен там быть раньше, чем пути к остальным FPC, если их в системе несколько. Кроме того, если в системе установлен, например, MinGW, то, если, в PATH путь к нему прописан раньше, чем к FPC, то будет использован не ld из FPC, а ld из MinGW и ничего собрать не удастся.

Не вижу проблемы. Сделай себе 2 скрипта — один при запуске cmd добавляет в PATH пути к MinGW, другой к чему-нибудь еще. Запускай нужный и не засоряй общесистемные переменные.

DAS> В общем, может кто-то нашел что-то удобное, чтобы сосуществовать рядом с этим безобразием?
Ну что знал, то предложил.

DAS> p.s. Linux не предлагать
А там по сути также. Переменные окружения вещь очень старая и ведет себя так, как это было придумано десятилетия назад.

От: DemAS http://demas.me
Дата: 04.12.07 07:18
Оценка:

Здравствуйте, Sergeant_BY, Вы писали:

S_B>setx path «%PATH%;C:\New Folder»
S_B>setx — из ресурскита к XP, например.

Спасибо, гораздо удобнее.

DAS>> — резервного копирования эих переменных
S_B>set > backup_env.txt ?

А обратно как?
Понимаю, что можно написать скрипт, который сформирует набор команд для setx, но может есть что-то готовое.

S_B>Оккрываю System properties->Advanced->Environment, добавляю какую-нибудь лабуду в конце %PATH%, нажимаю ОК.
S_B>Запускаю cmd, пишу set и вижу в %PATH% ту самую лабуду.
S_B>Что я делаю не так?

Я тоже вижу. Но если я пытаюсь запустить exe-к из каталога, находящегося в добавленной директории — система говорит, что не знает такого.
Хотя возможно это я ступил — наверное надо было перезапустить cmd.

DAS>> p.s. Linux не предлагать
S_B>А в Linux’е разве по другому?

Не знаю. Но на всякий случай предупредил. Спасибо

Как изменить системную переменную path в Windows 7

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

Сегодня мы не будем разговаривать о том, что такое командная строка и какие стандартные утилиты командной строки есть в Windows, так как об этом мы уже разговаривали в материале Основы командной строки Windows.

Для чего нужна системная переменная path

Системная переменная path нужна нам для того, чтобы мы могли добавлять свои утилиты в командную строку CMD.exe, а если говорить конкретней, то добавлять каталоги, т.е. пути к этим каталогам для того, что ОС могла определить по названию утилиты, где она расположена, и запустить ее.

Читайте также:  Run mac os with vmware

Если говорить на примере, то допустим, Вы открываете командную строку, набираете команду ipconfig (служит для конфигурирования сетевых интерфейсов) и в момент запуска командная строка не знает, где располагается данная утилита, поэтому она начинает ее искать. Сначала в текущем каталоге, затем в системных каталогах, которые как раз, и указаны в системной переменной path. Другими словами, если Вы написали свою консольную программу и хотите ее запустить так же, как ipconfig, то у Вас это не получиться, так как ОС не знает, где же лежит сама программа. Поэтому нам нужно переходить в каталог с программой или писать полный путь к исполняемому файлу, для того чтобы запустить свою утилиту. Поэтому, если Вы часто пользуетесь какой-нибудь консольной программой, которой нет, в стандартной сборке Windows и не хотите копировать ее в системные каталоги, то лучше всего будет создать свой каталог и добавить его в системную переменную path.

Пример

Допустим, мы написали консольную программу, для примера у нас это будет простой bat файл со следующей простой командой:

Примечание! Если Вы хотите, чтобы в командной строке выводилась кириллица, то сохраните бат файл с кодировкой OEM 866, это можно сделать с помощью текстового редактора Notepad++.

Сохраним с названием privet.bat на диске C в каталоге test.

Теперь мы запускаем командную строку (ОС Windows 7) «Пуск -> Выполнить -> cmd».

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

Как видите, командная строка не знает что это за программа. Мы, конечно, можем написать по-другому, например:

Т.е. с указанием полного пути к утилите, то тогда она конечно запустится. Или также можно перейти в каталог test и уже от туда запустить утилиту, например:

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

Примечание! Если Вам не нравится фон или цвет шрифта командной строки, то Вы легко можете изменить его, а как мы с Вами разговаривали в статье Настройка внешнего вида командной строки Windows.

Изменяем системную переменную path в Windows 7

Для этого открываем «Панель управления -> Система -> Дополнительные параметры системы».

Затем выбираем «Переменные среды».

После у Вас откроется окно «Переменные среды» и Вы в нижней части окна в списке «Системных переменных» ищите переменную path и жмете «Изменить».

В итоге у Вас откроется небольшое окошко «Изменение системной переменной», где Вы в поле «Значение переменной» дописываете в конце через точку запятой, путь к каталогу, в котором Вы будете хранить свои консольные утилиты. Например, я указал C:\test. После ввода жмем «ОК».

А теперь давайте проверим. Будем делать в точности, как и в первый раз, т.е. открываем командную строку и сразу пишем privet.bat и смотрим

Читайте также:  Gopro драйвер для windows 10

Как видите, на этот раз у нас все заработало, даже без указания полного пути.

Еще раз скажу, что это будет полезно тем, кто достаточно часто пользуется консольными утилитами, кстати, многие комплексы приложений, которые Вы устанавливаете сами, добавляют в path нужный путь, делая это за Вас.

Я думаю достаточно, если есть вопросы, задавайте в комментариях. Удачи!

Как отредактировать PATH в Windows 7, 8 и Windows 10?

Как запустить программу из командной строки не переходя каждый раз в папку с программой?! Как запускать сторонние программы так, как, например, программу IPCONFIG, которая не требует перехода в папку?

Что такое PATH система Windows?

Если вы скачали программу командной строки, например ADB (Android Debuggin Bridge), то вы не сможете запустить ее просто вписав adb в командной строке, как вы всегда поступали с системными командами Windows (IPCONFIG, NETSTAT и т.п.). Вместо этого вы должны будете указать командную строку содержащую полный путь к exe-файлу.

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

PATH система Windows сообщает вашей операционной системе каталоги, в которых следует искать исполняемые файлы. Например ранее упоминаемая программа ipconfig.exe расположена в каталоге C:\Windows\System32, который в свою очередь уже добавлен в PATH Windows. При вводе команды ipconfig система обыщет все папки из PATH на наличие файла ipconfig.exe и запустит его выполнение.

Если вы хотите то же удобство с программой (в нашем примере это ADB), то приложение ADB необходимо добавить в PATH Windows и после этого для запуска достаточно будет вписать в командную строку:

Больше ничего впечатывать не придется.

Как добавить папку в PATH?

В Windows 7, 8 и Windows 10 попасть в настройки PATH можно так: Панель управления / Система / Дополнительные переменные среды.

Далее перейти в «Переменные среды».

В окне «Переменные среды» обратите внимание на переменную с именем Path. Выберите ее и нажмите «Изменить..»

Дальнейшие действия одинаковы в Windows 7 и 8, но иные, облегченные, в Windows 10.

Path в операционной системе Windows 7 и Windows 8

В этих системах переменная Path является не более, чем длинной строкой текста с адресами каталогов системы. В этот текст мы добавим каталог и с нашей программой ADB.

Для того, чтобы добавить запись с путем к исполняемому файлу в Windows 7 и 8 к тексту нужно добавить путь, которому предшествует точка с запятой, разделяющая различные записи. Например так:

Добавлять такой путь в текст path нужно только в конец строки.

После ввода нажмите ОК. Все, мы добавили каталог в patch Windows 7 и 8.

Path в операционной системе Windows 10

В операционной системе Windows 10 этот процесс проще и менее запутанный. После нажатия кнопки «Изменить…» откроется новое диалоговое окно с расположенными в отдельных строках путях path.

Это улучшение позволяет проще и нагляднее видеть имеющиеся пути path и облегчает добавить новые пути.

Для добавления нового пути в переменную path Windows 10 нужно нажать «Новый», добавить путь C:\Android\platform-tools и нажать ОК.

Новая запись появится в низу списка.

Теперь запуск Android Debug Bridge доступен из любого раздела командной строкой без ввода полного пути к исполняемому файлу.

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