2013-02-07 34 views
-1

有人可以幫我解決這個問題。需要幫助將批處理文件中的變量重定向到逗號分隔的文本文件

我有一個批處理文件,5個變量,其被通提示進入了

set Name=john smith 
set address=25 center street 
set city=Hackenack 
set state=NJ 
set zip-07601 

我想創建一個名爲clients.txt逗號分隔輸出文本文件將包含變量的內容都在一個用逗號分隔字段。

我將在變量中有數百個具有不同值的輸入記錄。

我只是需要幫助,告訴我如何將變量重定向到一個輸出記錄。 謝謝

回答

0
@echo off 
setlocal 
SET /P name="Name? " 
SET /P address="Street address? " 
SET /P city="City? " 
SET /P state="State? " 
SET /P zip="Zip? " 

echo %name%,%address%,%city%,%state%,%zip% >> clients.txt 

如果你希望它是一個真正的CSV格式,你需要用引號括起來的輸入值,像這樣。

echo "%name%","%address%","%city%","%state%","%zip%" >> clients.txt

如果你想在文本文件是完全一行(每分組不是一條線),然後

set /p I="%name%","%address%","%city%","%state%","%zip%" <NUL >> clients.txt

其後每set /p I=stuff<NUL >>clients.txt的數據將被寫入附加到第一行,沒有換行符。

說明

當回聲單>案文,已經輸出到控制檯,而不是重定向到一個新的輸出文件,覆蓋目標文件,如果它已經存在的數據。

當您使用雙精度型>>回顯數據時,輸出會附加到現有文件而不覆蓋(或者如果文件尚不存在,則會創建)。

沒有換行符的追加有點棘手,需要一點小小的瑕疵:set /p var=text to append<NUL >>outfile.txt。如果你需要更多的細節,請留下評論,我會盡力解釋爲什麼這樣做。

相關問題