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

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

Ответить
Настройки темы
CMD/BAT - [решено] Научить cmd проверять кусочек из введенной пользователем фразы.

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


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

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


Здравствуйте, всем.

Есть кусочек кода cmd, который выполняет команды (открывает разные настройки) исходя из введенного пользователем запроса. Вот пример:

:start
set /p a=Введите что вам нужно:
if /i "%a%" equ "мышь" main.cpl &goto start
if /i "%a%" equ "мышка" main.cpl &goto start
if /i "%a%" equ "настроить мышку" main.cpl &goto start
if /i "%a%" equ "настройки мышки" main.cpl &goto start

Здесь команда if проверяет точное совпадение значений и только тогда выполняет main.cpl
Цель: возможно ли каким-нибудь образом сделать (создать отдельную переменную) или любым способом, чтобы команда if проверяла на совпадение только кусочек введенного пользователем значения, например "мышк"

Чтобы в итоге если пользователь ввел что-угодно содержащее "мышк" и открывались настройки мышки.

Примеры Чего-угодно что может ввести пользователь:
Открой настройки мышки
Открыть настройки мышки
Открой мне настройки мышки
Запустить настройки мышки
и т.д.

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

Заранее всем спасибо большое за идеи и помощь.

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

 

Аватара для NickM

Ветеран


Contributor


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

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


Так?
Сохранять в cp866
Код: Выделить весь код
@echo off
:start
set /p a=Введите что вам нужно:
echo.%a% | findstr мышк > nul
if Not ErrorLevel 1 (main.cpl) 
goto start
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:53, 03-05-2024 | #2



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

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


Deadooshka


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

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


Код: Выделить весь код
for /f %%f in ('echo %a%^| findstr /I /R "^мыш[ьаку]*$"') do main.cpl & goto start
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 03-05-2024 | #3


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


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

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


Именно так, NickM. Спасибо большое.

Sham, вам тоже спасибо большое. Я правильно понял, в вашем варианте обязательными будут считаться символы "мыш" (три символа), и ещё обязательно один из четырех в квадратных скобках?
Или наоборот [ьаку] - они могут присутствовать, но не обязательно?

В любом случае, сейчас проведу эксперименты. Спасибо ОГРОМНОЕ!

Отправлено: 16:57, 03-05-2024 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Драйвер - Снова научить диспетчер устройств обновлять драйверы из интернета HeIsTheHighlander Microsoft Windows 10 0 08-11-2022 00:43
CMD/BAT - (CMD/BAT) запуск нескольких программ под каждым пользователем из .txt файла Stydents Скриптовые языки администрирования Windows 1 05-08-2019 15:21
CMD/BAT - Автозапуск cmd(под администратором) из cmd(запущенного под пользователем). ppm85 Скриптовые языки администрирования Windows 6 03-08-2019 10:20
CMD/BAT - [решено] Помогите запустить CMD-файл из CMD-файла с параметрами Oleg48 Скриптовые языки администрирования Windows 2 18-11-2009 11:08
Помогите пожалуйста не срабатывает команда из*cmd файла запускаемого из RanOnceEx.cmd vovchiku Автоматическая установка Windows 2000/XP/2003 6 25-09-2007 23:38




 
Переход