Имя пользователя:
Пароль:
 | Правила  

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

Ответить
Настройки темы
CMD/BAT - Поиск слова в строке из реестра

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


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


Конфигурация

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


Доброго времени суток всем. Есть скрипт:
Код: Выделить весь код
echo on 
cls 
for /f "tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName ^| find "ProductName"') do set ProductName=%%b


if "%ProductName%" == "Windows Server 2008 R2 Datacenter" goto noconfig
if "%ProductName%" == "Windows Server 2008 R2 Enterprice" goto noconfig
if "%ProductName%" == "Windows Server 2008 R2 Standart" goto noconfig
if "%ProductName%" == "Microsoft Windows Server 2003" goto noconfig
if "%ProductName%" == "Microsoft Windows XP" goto config 
if "%ProductName%" == "Windows 7 Ultimate" goto config
if "%ProductName%" == "Windows 7 Enterprise" goto config
if "%ProductName%" == "Windows 7 Professional" goto config
if "%ProductName%" == "Windows 7 Home Premium" goto config
if "%ProductName%" == "Windows 7 Home Basic" goto config
if "%ProductName%" == "Windows 7 Starter" goto config



:noconfig
echo Config do not need
@pause
exit 

:config 
@echo AutoConfiguration Lan DHCP Script
echo config work
@pause
Помогите пожалуйста сделать так, чтоб он не сверял всю строку целиком, а проверял только часть строки и если в ней есть слово Server, уходил в noconfig, а если нет такого слова, то в config. Это будет скрипт автоматической установки, но только на клиентские машины а не на сервера.
Части конфиг и но конфиг пока тестовые, для проверки работы первого условия

P.S. Совсем не силен в программировании, по возможности, не кидайтесь помидорами

Заранее спасибо.

Отправлено: 14:08, 22-03-2017

 

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


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

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


Цитата Iska:
Простите, я не смог понять Вашей логики. Если существует каталог или файл "%ProgramFiles%\TightVNC" — Вы ничего не делаете. Если не существует — Вы проверяете существование каталога или файла "%ProgramFiles(x86)%". Если последний существует — устанавливаете tightvnc-2.8.5-gpl-setup-64bit.msi, иначе устанавливаете tightvnc-2.8.5-gpl-setup-32bit.msi. Для чего % в «set dir=%\\172.16.10.12\PolicyInstall\» я также не понял. Со вторым кодом ещё интереснее. »
Если папка TightVNC существует, то не надо устанавливать vnc, он уже установлен. Если существует каталог ProgramFiles(x86), это значит что система х64 и устанавливать надо пакет для х64 систем, иначе, устанавливается пакет для х32 систем. Ну а % в сет дир сейчас уже и не вспомню, для чего поставил

Цитата Iska:
Не проще ли вместо всего этого просто назначить msi пакеты для установки посредством той же групповой политики, а из файла реестра либо сделать шаблон неуправляемой групповой политики и настроить последнюю, либо же раздавать значения из этого файла реестра предпочтениями групповой политики? »
Средствами групповой политики пробовал, но оно не устанавливалось автоматически, а появлялось в "Программах и компонентах" в разделе "Установка новой программы по сети"... Т.е. устанавливать то нужно было все равно руками. Возможно я что то не то\не там настроил в гпо, навалилась куча других задач, про это на время забылось, потом когда вернулся к этому, почему решил попробовать сделать через бат файл. Вот как то так

А не могли бы рассказать подробнее что интересного во втором коде? Ну мне просто интересно послушать кого то кто более сведущ в программировании

Отправлено: 09:50, 27-03-2017 | #11



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

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


Ветеран


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

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


Цитата Сиволапый:
Если папка TightVNC существует, то не надо устанавливать vnc, он уже установлен. »
С чего бы это он вдруг был установлен?! Наличие или отсутствие папки ничего об этом не говорит. Совершенно.

Цитата Сиволапый:
Если существует каталог ProgramFiles(x86), это значит что система х64 »
Не факт. Совсем не факт. Наличие каталога говорит только о наличии каталога. Не более.

Цитата Сиволапый:
Средствами групповой политики пробовал, но оно не устанавливалось автоматически, а появлялось в "Программах и компонентах" в разделе "Установка новой программы по сети"... Т.е. устанавливать то нужно было все равно руками. Возможно я что то не то\не там настроил в гпо »
Угу. Вы публиковали (publish) пакет для распространения вместо того, чтобы назначать (assign). Попробуйте именно назначать пакеты — тогда будет идти установка в автоматическом режиме.

Цитата Сиволапый:
А не могли бы рассказать подробнее что интересного во втором коде? »
Честно — не хочется.

Отправлено: 10:14, 27-03-2017 | #12


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


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

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


Цитата Iska:
Угу. Вы публиковали (publish) пакет для распространения вместо того, чтобы назначать (assign). Попробуйте именно назначать пакеты — тогда будет идти установка в автоматическом режиме. »
Установка через GPO не проходит. В логах пишет что источник установочных пакетов недоступен, хотя он доступен, полностью расшарен... Бат файлом тоже не ставится в ХР, но только в логах совсем ничего не пишет...

Цитата Iska:
Не факт. Совсем не факт. Наличие каталога говорит только о наличии каталога. Не более. »
Не знаю как вам, но мне кажется, что вряд ли пользователи 32 битной версии ОС начнут создавать такую папку специально, чтоб скрипт не работал. Это уже из разряда каких то шпионских романов. Проверять разрядность системы через переменные PROCESSOR_ARCHITECTURE и PROCESSOR_ARCHITEW6432 мне, как НЕ ПРОГРАММИСТУ, показалось слишком большой и сложной конструкцией, хотя не спорю, подобный способ наверно более надежен.

Отправлено: 09:08, 29-03-2017 | #13


Аватара для Elven

Ветеран


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

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


Цитата Сиволапый:
В логах пишет что источник установочных пакетов недоступен, хотя он доступен, полностью расшарен... Бат файлом тоже не ставится в ХР, но только в логах совсем ничего не пишет... »
А от чьего имени происходит установка в случае развертывания приложения через GPO? Имел аналогичную проблему при развертывании LAPS, однако решил плюнуть на замороки с правами и положил в папку NETLOGON на контроллере. А так вроде нужны разрешения на шаре чтение для DomainComputers или для каждого компа по отдельности (если моя память не спит с другим).

Последний раз редактировалось Elven, 29-03-2017 в 12:39.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:21, 29-03-2017 | #14


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


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

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


Цитата Elven:
А от чьего имени происходит установка в случае развертывания приложения через GPO? Имел аналогичную проблему при развертывании LAPS, однако решил плюнуть на замороки с правами и положил в папку NETLOGON на контроллере. А так вроде нужны разрешения на шаре чтение для DomainComputers или для каждого компа по отдельности (если моя память не спит с другим). »
А это идея, надо попробовать
А при установке через GPO, не скриптом, домен то не будет разбираться какая версия ОС и какой из двух msi пакетов ставить? Т.е. в данном случае имеет смысл добавлять только установочный пакет для 32 битных систем?

Отправлено: 14:00, 29-03-2017 | #15


Аватара для Elven

Ветеран


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

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


Это сообщение посчитали полезным следующие участники:

Отправлено: 15:20, 29-03-2017 | #16


Ветеран


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

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


Цитата Сиволапый:
Установка через GPO не проходит. В логах пишет что источник установочных пакетов недоступен, хотя он доступен, полностью расшарен... »
Ага. Ну, так это же совсем другое дело, нежели то, что было озвучено. В NETLOGON класть, конечно, не надо, но вот это:
Цитата Elven:
нужны разрешения на шаре чтение для DomainComputers »
требуется задавать.

Отправлено: 16:46, 29-03-2017 | #17


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


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

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


Да, если дать права компьютерам на шару то всё работает. Ну по крайней мере на ХР ставится... Но данный способ не решает проблемы с установкой на сервера В этом случае надо переносить сервера в отдельную оушку какую нибудь. А вообще в домене при введении пк в домен, все компьютеры помещаются в оу Computers, а этот процесс как-то можно регулировать не руками а автоматически, чтоб определенные пк (например сервера) помещались, например, в другую оу сразу при введении в домен?

Отправлено: 08:31, 30-03-2017 | #18


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


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

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


Ну и опять же, если установленное приложение через GPO удалить, то снова при перезагрузке оно не поставится, нужно запихивать пк в другое оу, а потом опять перетаскивать обратно. Это тоже нельзя решить средствами GPO?

Отправлено: 09:40, 30-03-2017 | #19


Аватара для Elven

Ветеран


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

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


Цитата Сиволапый:
А вообще в домене при введении пк в домен, все компьютеры помещаются в оу Computers, а этот процесс как-то можно регулировать не руками а автоматически, чтоб определенные пк (например сервера) помещались, например, в другую оу сразу при введении в домен? »
Это не OU. Поменять можно так
Цитата Сиволапый:
Ну и опять же, если установленное приложение через GPO удалить, то снова при перезагрузке оно не поставится, нужно запихивать пк в другое оу, а потом опять перетаскивать обратно. Это тоже нельзя решить средствами GPO? »
Вот здесь вообще не понял, зачем перетаскивать? Просто политику в которой установка софта применить на нужную OU и все. Если нужно применять политику не ко всем компьютерам OU - используйте группы безопасности. Благо с изменениями, если моя память не спит с другим, от мая прошлого года одной махонькой галочки достаточно чтобы применять на все кроме этой самой группы (до этого вроде как можно было сделать только запретом чтения политики).

А если нужно применять только на одну группу - еще проще.

Отправлено: 12:28, 30-03-2017 | #20



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
PowerShell - Поиск в AD по строке из внешнего файла. Gluteus Maximus Скриптовые языки администрирования Windows 1 03-09-2015 10:08
VBS/WSH/JS - поиск слова в тексте и вывод части текста после искомого слова sergey23031978 Скриптовые языки администрирования Windows 9 18-02-2015 16:54
Разное - Программа для удаления нужного слова из всех веток реестра одним кликом. Smorvel Программное обеспечение Windows 5 07-11-2013 13:39
CMD/BAT - [решено] Поиск слова в последней строке support23 Скриптовые языки администрирования Windows 5 16-08-2012 13:04
[решено] PHP, определение слова в строке foma24 Вебмастеру 3 30-05-2012 15:35




 
Переход