Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Батник не срабатывает с одним словом в значение переменной

Ответить
Настройки темы
CMD/BAT - Батник не срабатывает с одним словом в значение переменной

Новый участник


Сообщения: 21
Благодарности: 1

Профиль | Отправить PM | Цитировать


привет всем. почему не срабатывает батник как надо? если заместо system, пишу два слова срабытвает батник. например пишу system windows показывает est' system. а так показывает nety system. хотя он там всегда есть.
Код: Выделить весь код
echo OFF

:check_system

set "reglang=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion"

for /f "skip=2 tokens=3*" %%i in ('reg query "%reglang%" /v SoftwareType') do set "SoftwareType=%%i %%j"
 
if "%SoftwareType%" == "System" (goto verification_system) 

goto end_verification_system

:verification_system
echo est' system
pause

:end_verification_system
echo nety system
pause

Отправлено: 11:03, 22-01-2015

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


termitt, непонятно, что Вы хотите получить, используя:
Цитата termitt:
Код: Выделить весь код
for /f "skip=2 tokens=3*" %%i in ('reg query "%reglang%" /v SoftwareType') do set "SoftwareType=%%i %%j"
»
У меня, например, по Вашему коду выходит тупо лишний пробел в присвоении, поскольку «%%J» пустое. Поэтому и Ваше сравнение:
Цитата termitt:
if "%SoftwareType%" == "System" (goto verification_system) »
будет ложным.

Опишите, что Вы хотите получить, и зачем Вы делаете именно так.

Отправлено: 12:50, 22-01-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 21
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, с помощью этого кода, я хочу получить информацию о переменной SoftwareType и узнать её значение System по принципу true or False. если правда то она существует то говорит est' system, а если нет то nety system.

Отправлено: 14:11, 22-01-2015 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


termitt, второй вопрос остался без ответа:
Цитата Iska:
и зачем Вы делаете именно так. »

Отправлено: 06:10, 23-01-2015 | #4


Новый участник


Сообщения: 21
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, чтобы узнать установилось По да или нет. Конечно я ставлю другие значения другое имя переменной и значение.. В принципе можно подправить этот? если да скажи как??

Отправлено: 08:09, 23-01-2015 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Например, так (Windows XP SP3):
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for /f "usebackq tokens=1,3" %%i in (
	`2^>nul reg.exe query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "SoftwareType" ^| find.exe /i "SoftwareType"`
) do set s%%i=%%j
 
if defined sSoftwareType (
	if /i "%sSoftwareType%" equ "System" (
		echo [SoftwareType] value is [System].
	) else (
		echo [SoftwareType] value is not [System].
	)
) else (
	echo Not found [SoftwareType] parameter in [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion] subkey.
)

endlocal
exit /b 0

Отправлено: 21:11, 23-01-2015 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Батник не срабатывает с одним словом в значение переменной

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как вывести значение переменной в знаках %% в файл. AFone Скриптовые языки администрирования Windows 5 23-02-2013 22:16
Любой язык - [решено] Присвоить значение переменной(исключая заданные) zion87 Скриптовые языки администрирования Windows 6 11-12-2011 20:29
Разное - [решено] У переменной System в реестре пустое значение. SANIOK_AV Microsoft Windows 2000/XP 2 31-01-2010 12:50
[решено] Возможность изменить значение переменной без перезапуска скрипта sashadeg AutoIt 3 13-04-2009 19:14
Как извлечь значение из переменной масива, которое не отображалось бы на экране dima1981 Вебмастеру 8 11-11-2008 11:54




 
Переход