![]() |
Переменные окружения в NT/2k/2k3-системах.
Как в консоле (cmd) (операционка W2K) командой объявить переменную, чтобы она "везде" была потом видна.
Команда set {переменная}={значение}, объявляет переменную, но она не видна в других консолях. Заранее спасибо. |
Crazy_kettle
а без set попробуй |
есть прога setx.exe - именно для этих целей
одно ограничение - новая/изменённая переменная будет видна во всех консолях которые откроются после вызова этой команды (если 2 консоли открыть разом и в одной чего-то изменить вторая останется без апдейта) |
Цитата:
to SapeR Спасибо. Помогла. Только с ней есть другая трабла, как эту переменную окружения потом удалить. Как я понимаю, только ручками из реестра HKCU\enviroment\{имя переменной} с последующей перезагрузкой. |
Цитата:
|
Зря радовался ;(.
Если существует глобальная переменная (которая действует для всех пользователей), то поменять её не получается с помощью setx (возвращается её "старое значение"). Вот и не поймёшь, что делать? Вообще-то проблема такова: В универе (тачки так под управлением Win NT/2K/XP) мне хочется поменять переменную окружения PATH (возможно ещё INCLUDE и LIB). Но я, естественно, не имею там прав администрарора. Поэтому "глобально" для всех пользователей я переменные окружения не поменяю (впрочем мне это и не нужно). Естественно хочется, чтобы область видимости "изменённых" переменных не обланичивалась лишь одной консолью. Ну, конечно, ручками всё менять на раз второй надоест (в универе же не всегда на одной машине сидишь, да и админы подчищают Documents and Settings периодически), поэтому желательно, чтобы всё это можно было сделать консольными командами (чтобы дожно было запихнуль комманды в пакетный файл и потом запускать только его). Жду советов, предложений, вызказываний с большим нетерпением. |
кушай с маслом
Код:
SetNewPath.bat |
Crazy_kettle
Создай лично под себя файлик autoexec.nt (или подправь для всех системный ;) ) и пропиши его для всех своих консолей... А в том файлике переменные окружения можно назначать как в обычном ДОСе... |
to Shaper
Спасибо, но проблему предыдущего поста это не решает. Делаем setx path Bla-h Bla-h Bla-h echo %path% И видим "старый" path Цитата:
|
Цитата:
2. Правой кнопой мыша->Свойства->Вкладка "Программа"->Дополнительно 3. Пропиши пути к своим файликам autoexec и config. 4. В свойствах ярлыка измени путь и имя исполняемого файла на любые необходимые. Дальше ярлык можно тиражировать, изменяя каждую копию... Можно даже прописать отдельные конфигурации для каждого ярлыка... |
Цитата:
set path=Bla-h Bla-h Bla-h setx path %path% echo %path% |
Цитата:
Цитата:
вывод - вызывай бат-файл не из консоли а шорткатом, а консоли открывай потом З.Ы. а почему вдруг Shaper ? :( |
Цитата:
|
to Borland
Попробую. Цитата:
Цитата:
|
а что если запускать приложение для которого ты подменяешь переменные из того же батника?
|
Цитата:
Есть еще такая утилка для ком-строки из резкита - pathman. У меня при установке/переустановке виндов запускается скрипт, из которого при помощи pathman все пути настраиваются. До этого использовался setx и reg add и тоже как-то проблем не возникало P.S. Только что из-под Фара выполнил setx fff 12345 и открыл консоль через меню start\run - переменная fff в наличии! |
НАКОНЕЦ-ТО. У меня получилось. Прочитал до конца вдумчиво, что выдаёт cmd /? и понял решить проблему.
Короче создаём строковой параметр с именет AutoRun в HKEY_CURRENT_USER\Software\Microsoft\Command Processor и значением равным выполняемой комманде при каждом запуске cmd. В моём случае я прописал туда адрес пакетного bat файла следующего содержания: Цитата:
Конечно я чрезвычайно благодарен всем, кто не прошёл мимо этой ветки. P.S. 1)Все манипуляции осуществлялить под OS Win2K; 2)Кстати у cmd есть класная опция /f:on, которая включает автозавершение имён файлов (по CTRL-F) и имён папок (по CTRL-D). (конечно, это не ставниться с BASH-евым <Tab> и <Tab><Tab>, но тоже ничего). ________________________________________________ А теперь ответы на некоторые предложения: Цитата:
Цитата:
У меня при определении новой переменной окружения всё происходит как положено (и сразу видна, и вновь открывающихся консолях и после перезакрузки), но вот при переопределении глобальных ... Ты попробуй пожалуйста "переопределить" переменную path и результаты (вместе с названием опереционкой) в студию. to Borland Не подскажешь, какая у тебя операционка. Дело в том, что у меня в свойствах нет вкладки "программа". Есть только вкладки General (общие), Shortcut(ярлык), Options(опции), Font(шрифт), Layout (положение), Colors(цвета), Security(безопасность) {У меня винда английская}. Кнопки, флажка more, additional нигде. Кнопки advanced... есть только на вкладках General и Security (но они явно к моей проглеме не относятся). |
Цитата:
А вкладки одинаковы что в 2k, что в XP, что в 2k3... (у меня - XP). |
Цитата:
Поэксперементировал, создавая и глобальные и пользовательские переменные - уже созданные нормально переопределяются, локальные перекрывают глобальные. Для себя вывод сделал однозначный - под моей ситемой всё работает как надо, траблов никаких с переменными нет. Хотя я и подозревал, что всё именно так ;) Система Windows XP, но, наскольку я понимаю, в линейке NT различий при работе с переменными быть не должно P.S. Переменная path, кстати, находится на особом положении. Локальная не перекрывает глобальную, а добавляется к ней. |
| Часовой пояс GMT +4, время: 17:46. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.