додавання PATH за допомогою SETX чи PATHMAN чи чогось іншого?


12

Я намагаюся додати PATH з командного рядка, як і в SETX% PATH% ... він завжди розширює PATH, чого я не хочу.

PATHMAN призначений саме для цієї мети, але він не працює для мене в Windows 7. Більшість випадків замерзає і не перевіряється на дублювання.

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

Відповіді:


13

Див. Статтю Без болю редагування змінної середовища PATH у Windows .

Рекомендує використовувати виправлені :

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

pathed /append C:\Bin\Sysinternals /machine

Якщо ви хочете замість цього додати їх до системи PATH користувача, виконайте такі дії:

pathed /append C:\Bin\Sysinternals /user

Це саме те, що я шукав! Зі статті я спробував інші 3 рішення вже без щастя. Здається, це той, кого я шукав. Працює чудово! До речі, це не має нічого спільного з Sysinternals.
гіперкнот

Це має працювати, але у нього є істотна помилка, якщо ви спробуєте додати / додавати щось до шляху користувача, а шлях користувача не визначено, утиліта не зможе додати шлях.
sorin

1
Я щойно спробував це додаток; засмучувало, що це, здається, не працює. Я зрозумів, що мені потрібно запустити його під час входу в систему як адміністратор, АБО запустити його в командній оболонці, яку було запущено з "Запустити як адміністратор". Також вам може знадобитися категорично використовувати "/ machine", якщо ви хочете вплинути на шлях рівня машини. Удачі! І дякую @harrymc за підказку; +1 від мене!
Dan H

FWIW, є ще одна "виправлена" утиліта, опублікована на code.google.com, яка, схоже, робить те ж саме з дещо іншим синтаксисом.
syneticon-dj

4

(Я знаю, що ви вже відповіли на це питання, але)

Проблема з вашим використанням setxполягає в тому, що ви не цитуєте рядок, який хочете встановити. Оскільки ;символ є роздільником команд (ви можете вводити рядкові команди, які слід запускати послідовно), він вважає, що ви встановлюєте шлях, а потім виконайте іншу команду.

Що вам слід зробити, це:

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

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


2
Він
обріже

1

Існує три методи, з яких я знаю, один з яких є постійним (при додаванні в змінні середовища) та інші 2 темп .. тільки для встановлення шляху, і таким чином встановлений ними шлях знищується після припинення (закриття) cmd. Починаючи з методів: -

  1. Тимчасовий метод 1: -

    setx PATH "% PATH%; c: \ ім'я шляху;"

  2. Тимчасовий метод 2: -

    встановити PATH = c: \ ім'я шляху;% PATH%

  3. Постійний метод: -

    pathed / append c: \ ім'я / машина / шлях (для всіх користувачів) pathed / append c: \ назва імені / користувача (для поточного користувача)


0

У Windows 10 x64 1909 (і, ймовірно, попередніх версій) використовуйте функцію пошуку меню "Пуск" з "встановити змінні", щоб знайти та запустити будь-який із наведених результатів, щоб отримати доступ до переглянутого графічного редактора MS, вибравши кнопку [Змінні середовища]: - Редагувати системні змінні середовища - Редагуйте змінні середовища для свого облікового запису

Редактор також доступний за допомогою кнопки [Змінні середовища] у старому діалоговому вікні Властивості системи.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.