我正在嘗試編寫我的程序的手動文檔驗證部分。它基本上是在同一個文件夾中逐一打開所有的pdf文檔。當它打開時,我想回應用戶的一些可能性。這裏出現問題。我有大約180個可能的選擇。我正在考慮要求提供首選信。然後它會回顯所有選擇,以X字母開頭,用戶只需輸入該選項的編號。因此,例如,我們有: 1. Asomething 2. Asomename 3. Asomenametoo 4. BNAME 5. BNAME 2 6. BNAME 3(Windows批處理文件)FOR LOOP中的IF語句
我想用戶選擇第一個字母和打印可能的選擇。當做出選擇時,程序應該在相同的文件夾中向同名的txt文件添加一些字符串。這裏我有一個FOR循環中的IF語句的問題。我想使用goto,但是我不能在FOR循環中執行它。
我可以設置每個數字的所有字符串之前。例如:當您選擇1時,它會將SomeString添加到txt。使用選項來避免任何錯字是很重要的。有人知道任何其他方式在FOR循環內執行此操作嗎?
CODE:
setlocal enabledelayedexpansion
FOR %%b IN (c:\test\*.txt) DO (
IF "%ERRORLEVEL%"=="0" ECHO Document will open now...
start Acrobat.exe %%b.pdf
ECHO 1. Sample 1
ECHO 2. Sample 2
set /p choice= Please enter number:
call :OPTION
ECHO !choice! >> %%b
PAUSE
taskkill /IM Acrobat.exe >> c:\test\log\temp.txt
)
PAUSE
GOTO MENU
:OPTION
IF !choice!==1 SET /A !choice!==MNV666
IF !choice!==2 SET /A !choice!==MNV777
GOTO:EOF
[FOR循環(批處理/ cmd)中檢查「IF」條件的可能重複](http://stackoverflow.com/questions/1163938/check-if-condition-inside-for-loop-batch-cmd) –