|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Инициализация переменной окружения и ее проверка |
|
|
CMD/BAT - Инициализация переменной окружения и ее проверка
|
Пользователь Сообщения: 125 |
Добрый день.
Подскажите, как в CMD присвоить значение переменной окружения windows, а потом проверить ее значение и вывести сообщение в MsgBox, если она TRUE. |
|
Отправлено: 16:30, 22-08-2021 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать stuermer01, о какой переменной окружения идет речь? это путь к папке, файлу? Чем проверяется ее значение?
@Echo Off cls Set "Param=kuku123" Set "Value=tra la la 333" Set "RegDir=HKEY_CURRENT_USER\Environment" REG ADD %RegDir% /V %Param% /d "%Value%" /f Set "ValueTest=" For /F "usebackq skip=2 tokens=2* delims= " %%i In (`2^>nul REG QUERY %RegDir% /v %Param%`) Do Set "ValueTest=%%j" If /I "%Value%"=="%ValueTest%" (Echo Value=%Value% == %ValueTest%=ValueTest) Else (Echo Value=%Value% ^<^> %ValueTest%=ValueTest) pause Exit /B 0 Для использования нового значения переменной системы по умолчанию понадобится перезагрузка. |
------- Последний раз редактировалось megaloman, 22-08-2021 в 18:39. Отправлено: 16:44, 22-08-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать спасибо, а попроще возможно? Может на VBS это будет проще?
Это делается для того, чтобы случайно автоматически не выключить комп, когда идет запись в фоне. При нажатии на кнопку выключения (cmd скрипт) будет запускаться проверка переменной и выводится сообщение, лучше в виде MsgBox VBS, поэтому понадобится отдельный VBS скрипт. А эта переменная будет устанавливаться вручную при включении записи. |
Отправлено: 12:45, 23-08-2021 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 14:08, 23-08-2021 | #4 |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Цитата Iska:
|
|||
Последний раз редактировалось stuermer01, 23-08-2021 в 16:13. Отправлено: 16:05, 23-08-2021 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата stuermer01:
Скрытый текст
![]() Используйте временный файл с определённым содержимым. При: Цитата stuermer01:
|
||
Отправлено: 16:19, 23-08-2021 | #6 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Мутноватая постановка задачи. Идея другая: Вы запускаете батник, он создаст где-нибудь служебный файл-флаг, можно нулевой длины, пусть Ваш батник будет что-то делать, а по завершении удаляет этот файл. Любой другой батник или иной сценарий может проверять наличие этого файла и действовать в соответствии с его наличием/отсутствием. С глобальной переменной окружения имхо такой номер не пройдет. |
|
------- Последний раз редактировалось megaloman, 23-08-2021 в 16:37. Отправлено: 16:27, 23-08-2021 | #7 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:08, 23-08-2021 | #8 |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Тогда как по-простому будет выглядеть скрипт toggle-record-flag.cmd, который при запуске будет создавать файл, если его нет и удалять его, если он есть? Скрытый текст
@echo off
set "sPath=C:\tmp.txt" (if exist "%sPath%" <"%sPath%" set /p ct ![]() msg * %ct% exit здесь %ct% это тоже переменная окружения? Надо без неё уже. C "msg *" отличная идея, выйдет окошко и не надо VBS, спасибо. |
|
Последний раз редактировалось stuermer01, 23-08-2021 в 18:22. Отправлено: 18:04, 23-08-2021 | #9 |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать что-то вроде:
Скрытый текст
if exist c:\record.txt (
del "c:\record.txt" ) else ( создать файл "c:\record.txt" ) |
Отправлено: 18:29, 23-08-2021 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Проверка переменной | vngreez@vk | Скриптовые языки администрирования Windows | 6 | 08-05-2017 18:57 | |
CMD/BAT - [решено] Без раскрытия системной переменной окружения | janxp | Скриптовые языки администрирования Windows | 11 | 09-02-2014 06:35 | |
Проверка переменной | Алексей Zn | Вебмастеру | 1 | 20-09-2013 14:41 | |
CMD/BAT - поиск файла по путям, заданным в произвольной переменной окружения | CyberMuesli | Скриптовые языки администрирования Windows | 4 | 25-06-2012 14:23 | |
пишу переменную окружения тип Volatile wscript скриптом но не могу ее использовать .? | egor_siv | Microsoft Windows NT/2000/2003 | 9 | 25-10-2006 13:32 |
|