2015-09-29 80 views
-1

嗨我正在創建一個批處理文件來執行我的測試用例。 並希望從用戶獲得輸入該測試情況下,他/她要像批處理文件中的用戶輸入操作

運行中輸入ID {1,2,3,4,5}: ,我必須處理用戶輸入在我的批處理文件 假設如果用戶提供1,2 然後我必須分開使用delims字符串「」和開始一個循環,這將增加所有輸入如下命令 - execute_test 1 2

我完全陌生的批處理文件,因此任何人可以幫助我一個簡單的解決方案?

回答

0

保存像文件:

用戶輸入被列出,並且可以使用數%進行訪問,例如:

shutdown.bat:

shutdown /m \\%1 

命令行:

shutdown.bat computer1 

將會導致命令:

shutdown /m \\computer1 

運行

+0

這是命令行參數,而不是用戶輸入。 – Stephan

0

使用set命令來獲取用戶輸入。

使用for命令來處理它的元素(如果使用默認分隔符(如空格,逗號或分號)進行分隔,則工作)。

set /p "input=Please enter testcases: " 
echo %input% 
for %%i in (%Input%) do (
    echo working on %%i 
    rem do other usefull stuff 
) 
echo finished. 

測試運行:

C:\test>test.bat 
Please enter testcases: 1,5,8 
1,5,8 
working on 1 
working on 5 
working on 8 
finished. 

C:\test> 

set /?看到,for /?

+0

謝謝斯蒂芬它真的幫助我。 –

0

選擇是另一種選擇..

CHOICE可用於例如特定%ERRORLEVEL% 設置爲將%errorlevel%設置爲6:

ECHO 6| CHOICE /C 123456 /N >NUL 

http://ss64.com/nt/choice.html

+0

'choice'是獲取單個字符的一個非常好的選項,但是OP需要一個包含一些選項的字符串 – Stephan

+0

順便說一句:設置錯誤級別要容易得多:'cmd/c「exit 543」' – Stephan