<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: Функция выбора вариантов (choice)]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=7922</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7922&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: Функция выбора вариантов (choice)».]]></description>
		<lastBuildDate>Fri, 28 Dec 2012 10:33:03 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[CMD/BAT: Функция выбора вариантов (choice)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=67960#p67960</link>
			<description><![CDATA[<p>Предлагаю к рассмотрению функцию для выбора пользователем одного из нескольких вариантов. Некий аналог старого choice.</p><p>Сама функция:</p><div class="codebox"><pre><code>:choice
:: Выбор пользователем одного из вариантов
:: Параметры - варианты выбора
setlocal
if &quot;%~1&quot;==&quot;&quot; (
  set result=0
  pause
  goto choice_3
)
set count=0
:choice_1
set /a count+=1
echo %count%. %~1
shift
if not &quot;%~1&quot;==&quot;&quot; goto choice_1
:choice_2
set /p result=Выш выбор (1-%count%): 
for /l %%i in (1, 1, %count%) do if &quot;%result%&quot;==&quot;%%i&quot; goto choice_3
goto choice_2
:choice_3
endlocal &amp; exit /b %result%</code></pre></div><p>Пример запуска:</p><div class="codebox"><pre><code>call :choice &quot;Приветствие&quot; &quot;Случайное число&quot; &quot;Изменить цвета&quot; &quot;Выход&quot;</code></pre></div><p>Создаст меню из четырех пунктов:</p><div class="codebox"><pre><code>1. Приветствие
2. Случайное число
3. Изменить цвета
4. Выход</code></pre></div><p>Результат выбора помещается в переменную <em>errorlevel</em>.</p><p>Готовый пример в аттаче.</p>]]></description>
			<author><![CDATA[null@example.com (Arigato)]]></author>
			<pubDate>Fri, 28 Dec 2012 10:33:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=67960#p67960</guid>
		</item>
	</channel>
</rss>
