/ / मुझे आउटपुट की सूची के आधार पर एक बैच मेनू कैसे बनाना चाहिए - विंडोज़, बैच-फ़ाइल

मुझे आउटपुट सूची की सूची के आधार पर एक बैच मेनू कैसे बनाना चाहिए - विंडोज़, बैच-फ़ाइल

मुझे लगता है कि मैं जो चाहता हूं उसे समझाने के लिए संघर्ष कर सकता हूंमेरा बैच स्क्रिप्ट यहाँ व्यवहार करने के लिए जाता है। मेरी स्क्रिप्ट उपयोगकर्ता इनपुट की आवश्यकता वाले मेनू सिस्टम के रूप में कार्य करने के लिए है। मैंने अब तक जो भी प्रबंधित किया है, वह उपयोगकर्ता को आउटपुट के लिए डेटास्टैम्प की सूची भेजना है। हालाँकि मैं स्क्रिप्ट की व्यवस्था करने का प्रयास कर रहा हूँ, इसलिए किसी भी टाइमस्टैम्प को 1,2,3 के रूप में चुना जा सकता है और उपयोगकर्ता इनपुट के लिए संकेत के आधार पर। बाद में मैं उसे एक वैरिएबल में सहेजना चाहता हूं जिसमें बाद में मैं दूसरा ऑपरेशन कर सकूं।

तो यह एक उदाहरण है जो मैं देख सकता हूं:

FOR /f "tokens=3 delims= " %%G IN ("%history% ^| findstr /C:"Start Time:"")      DO (call :subroutine %%G)

:subroutine
echo %1
GOTO :EOF

मेरा आउटपुट अब इस तरह दिखता है:

20150706232400
20150706232707
20150706232757
20150706233058
20150706233144

किसी भी संकेत की सराहना की। धन्यवाद।

उत्तर:

उत्तर № 1 के लिए 1
@echo off
setlocal EnableDelayedExpansion

rem Show menu and store options in an array
echo Available datestamps:
echo/
set i=0
FOR /f "tokens=3" %%G IN ("%history% ^| findstr /C:"Start Time:"") DO (
set /A i+=1
echo !i!. %%G
set "option[!i!]=%%G"
)
echo/

:getChoice
set /P "choice=Enter desired option: "
if "!option[%choice%]!" equ "" echo ERROR: no such option & goto getChoice
set "variable=!option[%choice%]!"

ECHO/
ECHO Selected datestamp: %variable%