10

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

PATHMAN как раз для этой цели, но он не работает для меня в Windows 7. Он зависает в большинстве случаев и не проверяет дубликаты.

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

3 ответа3

11

Смотрите статью Редактировать переменную среды PATH в Windows безболезненно.

Рекомендуется использовать pathed :

Например, скажем, что у вас есть инструменты Sysinternal в C:\Bin\Sysinternals, и вы хотите добавить их в PATH. Просто сделайте:

pathed /append C:\Bin\Sysinternals /machine

Если вы хотите добавить их в пользовательскую систему PATH, выполните:

pathed /append C:\Bin\Sysinternals /user
4

(Я знаю, что вы уже ответили на этот вопрос, но)

Проблема с использованием setx заключается в том, что вы не цитируете строку, которую хотите установить. Потому что ; символ - это разделитель команд (вы можете вводить команды, которые будут выполняться последовательно с ним), он думает, что вы задаете путь, а затем запускаете другую команду.

Что вы должны сделать, это:

setx /M path "C:\perl\bin;%path%"

Это добавляет мою переменную %path% к C:\perl\bin , потому что я хочу, чтобы она шла раньше всего, что может быть установлено. /M означает, что я имею в виду System EnvVar, а не пользователя.

0

Есть три известных мне метода, один из которых является постоянным (при добавлении в переменные окружения), а другой - 2 r temp .. только для установки пути, и, следовательно, путь, заданный ими, уничтожается после завершения cmd (закрытия). Начиная с методов:-

  1. Временный метод 1:-

    setx PATH "% PATH%; c:\path name;"

  2. Временный метод 2:-

    установить PATH = c:\ имя пути;% PATH%

  3. Постоянный метод:-

    исправлено / добавлено c:\ имя пути / машины (для всех пользователей) исправлено / добавлено c:\ имя пути / пользователя (для текущего пользователя)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .