2015-10-20 40 views
0

我有一個批處理文件,可打開cmd.exe以接受用戶輸入。用戶輸入爲字符串格式,逗號分隔。示例:data1,data2,data3將逗號分隔的字符串輸出爲多行文本文件的批處理文件

如何將逗號分隔並輸出到多行文本文件?我的下面的代碼只是吐出一個帶有data1的文本文件,但沒有留下data2和data3。

@ECHO OFF 
SET /P skus=Enter comma separated data (no spaces) or one at a time: 

IF "%data%"=="" GOTO Error 

for /F "tokens=1,* delims=," %%A in ("%data%") DO (
echo %%A >> data.txt 
) 

:Error 
ECHO You did not enter any data! Good-bye!! 
:End 
+2

幫助您使用正確的變量名稱。將您的SET/P變量更改爲** data **或更改您的IF命令和FOR/F命令以使用** skus **變量。使用FOR命令而不是FOR/F – Squashman

+0

Ahh yes ...在更改Stack Overflow問題的代碼時使用變量名稱。感謝您的高舉。 – div411

+0

你的'for'行說:「把第一個項目放在%% A中,並且其餘的行('*')放在%% B」 – ths

回答

1
@ECHO OFF 
SET /P data=Enter comma separated data (no spaces) or one at a time: 

IF "%data%"=="" GOTO Error 

for %%A in (%data%) DO echo %%A >> data.txt 


:Error 
ECHO You did not enter any data! Good-bye!! 
:End 

詢問輸入 檢查輸入,但不是有效的輸入。 分析變量。

+0

謝謝@Squashman – div411

相關問題