Подтвердить что ты не робот

Почему PATH среды Powershell отличается от PATH системной среды?

У меня такая странная ситуация:

Моя переменная PATH пользователя и системы отличается от PATH в powershell.

Когда я это сделаю:

PS C:\$env:path
C:\Windows\System32\WindowsPowerShell\v1.0\;c:\oldpath

Однако это неверно, похоже, что он застрял на какой-то старой переменной PATH моей системы, поэтому ни одна из udpates, которую я сделал на ней, не изменила эту переменную (я перезапускаю после каждого изменения теста).

Почему это происходит? Должен ли я устанавливать переменную PATH только для powershell?

4b9b3361

Ответ 1

Изменение может быть "отложено", поэтому попробуйте одно или несколько из этих решений:

  • Выйти и снова;
  • Диспетчер задач > Перезапустите "Проводник Windows" (explorer.exe)
  • Перезапустите приложение запуска (запуск, SlickRun и т.д.)
  • Reboot

Объяснение:
Powershell наследует среду процесса, который ее запускал (что зависит от того, как вы его запускаете). Обычно это интерактивная оболочка (explorer.exe). Когда вы изменяете среду из свойств компьютера, вы изменяете среду explorer.exe, поэтому, если вы запускаете powershell из explorer.exe(например, из меню "Пуск" ), вы должны увидеть новую среду.

Однако, если вы запустите его из чего-то другого (скажем, оболочки cmd.exe, которую вы уже открыли), тогда вы не будете, поскольку этот процесс был запущен в старой среде.

Другими словами: будьте осторожны, как вы запускаете вещи.