SetX

Создание или изменение переменных среды в пользовательской или системной среде. Переменные можно задавать с помощью аргументов, параметров реестра или ввода из файла.

Первоначально, утилита SetX.exe входила в состав Windows 2000 Resource Kit в качестве дополнительного средства системного администрирования, но начиная с Windows Vista - входит в стандартный пакет поставки системы.

Синтаксис

Три способа выполнения SetX:
  • SETX [/S <система> [/U [<домен>\]<пользователь> [/P [<пароль>]]]] var <значение> [/M]
  • SETX [/S <система> [/U [<домен\>]<пользователь> [/P [<пароль>]]]] var /K <путь> [/M]
  • SETX [/S <система> [/U [<домен\>]<пользователь> [/P [<пароль>]]]] /F <файл> {var {/A x,y | /R x,y строка}[/M] | /X} [/D <разделители>]

Параметры




Параметр


Описание

/S <система>Подключаемый удаленный компьютер.
/U [<домен>\]<пользователь>Пользовательский контекст, в котором должна выполняться эта команда.
/P [<пароль>]Пароль для этого пользовательского контекста.
varЗадаваемая переменная среды.
<значение>Значение, назначаемое переменной среды.
/K <путь> Задание переменной по информации, содержащейся в параметре реестра. Путь должен задаваться в формате куст\раздел\...\параметр.
/F <файл>Имя текстового файла, который следует использовать.
/A x,y Задание абсолютных координат файла (строка X, элемент Y) как параметров поиска в файле. (строка X, элемент Y) как параметров поиска в файле.
/R x,y строкаЗадание координат относительно значения "строка" как параметров поиска.
/M Указание создания переменной среды на системном уровне (HKEY_LOCAL_MACHINE). По умолчанию переменная среды создается в разделе HKEY_CURRENT_USER на уровне пользователя.
/XОтображение содержимого файла с координатами x,y.
/D <разделители> Указание дополнительных разделителей, таких как "," или "\". Встроенные разделители: символы пробела, табуляции, возврата каретки и перевода строки. Дополнительным разделителем может быть любой знак ASCII. Максимальное число разделителей, включая встроенные, равняется 15.
/?Вывод справки по использованию.
Примечания.
  • 1) SETX записывает переменные в главную среду в реестре.
  • 2) На локальном компьютере переменные, созданные или измененные данным средством, будут доступны в будущем окне командной строки, но не в текущем окне CMD.exe!
  • 3) На удаленном компьютере переменные, созданные или измененные данным средством, будут доступны со следующего сеанса входа.
  • 4) Допустимые типы параметров реестра: REG_DWORD, REG_EXPAND_SZ, REG_SZ, REG_MULTI_SZ.
  • 5) Поддерживаемые кусты: HKEY_LOCAL_MACHINE (HKLM), HKEY_CURRENT_USER (HKCU).
  • 6) Разделители определяются с учетом регистра.
  • 7) Значения типа REG_DWORD извлекаются из реестра в десятичном формате.

Примеры

SETX MY_SUPER_VAR NEW

SETX MY_SUPER_VAR OLD /M

SETX /S comp406_1 /U Ivanov /P 1q2w3e4r MACHINE COMPAQ

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

SETX My_var "hello, world"

SETX JAVA_HOME "C:\Program Files\Java\jdk1.6.0_31" /M


Команда SETX может быть использована для извлечения значения из текстового файла фиксированной структуры.

SETX My_var /F ping_localhost.out /A 1,3

Файл ping_localhost.out в данном случае был получен в результате выполнения команды

ping localhost<ping_localhost.out

Следует отметить, что содержимое такого файла может значительно отличаться, например, при другой локализации Windows.
Для облегчения расчета абсолютных координат файла (параметр /A строка X, элемент Y) удобно использовать параметр /X (для небольших файлов).

SETX /F ping_localhost.out /X

На экран будет выведены абсолютные координаты и значения всех элементов файла. Вывод может быть весьма объемным. Что бы уменьшить вывод можно использовать findstr для фильтрации результатов.

setx /f ping_localhost.out /x /d "=" | findstr "TTL"



Для работы с переменными среды (переменными окружения) можно использовать средства WSH (Windows Script Host). Примеры можно посмотреть здесь.
Следует отметить, что эти примеры будут работать даже в windows XP, где стандартно нет команды setx.



Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).



Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь





HTML и CSS
корректный
my counter

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка link О авторе Фитотерапия Молитвы Водолечение Юмор Форум Кладовка Ссылки О авторе Отправить сообщение Карта сайта Поиск по сайту Главная страница