سؤال
كيفية المتابعة مع ملف دفعة تفاعلية؟
على سبيل المثال ،
هل تريد الاستمرار؟ [Y/N
إذا "y" goto label1
آخر goto label2
شكرًا
المحلول
يمكنك استخدام الأمر set. ما يلي هو ما يعادل الأمر DOS للرمز الزائف لديك أعلاه:
set /p choice=Do you want to continue? [y/n]
if '%choice%'=='Y' goto label1
goto label2
نصائح أخرى
باستخدام أمر الاختيار ، يمكنك تحديد مجموعة من الأحرف الصالحة ورسالة:
choice /C YN /M "Do you want to continue?"
if errorlevel 2 goto labelno
if errorlevel 1 goto labelyes
SET /P Choice = هل تريد المتابعة؟ [y/n] إذا كان "٪ choice ٪" == "y" (goto label1) آخر goto label2
معظم إجابات اللاعبين التي أحبها ولكن أكثر ما سأفعله هو (على سبيل المثال هذا الرمز هو طريقتي في التنظيم.
:Label1
@echo off
color (any color)
title (anything here)
set /p choice=Do you want to continue? [y/n]
IF %choice% == y goto Label2
IF %choice% == n exit
:Label2
cls
echo you chose Yes.
أعرف طريقة واحدة للقيام بذلك (مثل @user3093687 المنشور)
set /p choice=Do you want to continue? (y,n)
if /I %choice%==y goto Label2
if /I %choice%==n goto exit
:Label2
Cls
echo You chose yes
:exit
exit
يصنع /I في السطر الثاني والثالث من ملف الدُفعات بحيث لا يكون حساسًا للحالة ويتم تجاهل الأحرف الخاصة (على سبيل المثال ، سيتم قراءة Y و Y كـ y.
لا تنتمي إلى StackOverflow