2017-08-12 243 views
-1

我試圖創建一個在Windows 10上運行的.bat文件。 基本上,我在一個文件夾中有多個.csv文件。將.bat中的文本文件與文件之間的換行符合並

FileA.csv

abc,abc 
def,def 

FileB.csv

ghi,ghi 
jkl,jkl 

我要的文件將被合併到FileC.csv此格式。

abc,abc 
def,def 
ghi,ghi 
jkl,jkl 

如果我使用:

copy /b *.csv FileC.csv 

我FileC.csv得到如下的輸出:

abc,abc 
def,defghi,ghi 
jkl,jkl 

我需要添加合併文件之間的換行符,但無法弄清楚怎麼樣。任何幫助,將不勝感激。

回答

0
type A.csv >> C.csv 
echo. >> C.csv 
type B.csv >> C.csv 
  1. 類型將呈現文件
  2. >>C.csv的內容將輸出追加到existig文件
  3. echo.將打印一個空行

UPD

FOR %f IN (*.csv) DO type %f >> ..\newfile.csv & echo. >> ..\newfile.csv 

這將合併在新.csv文件中的所有.csv文件在父文件夾(如果是新的文件將是相同的文件夾中創建第一次迭代之後,還合併文件太)

+0

謝謝,這也正是我想要的。有沒有辦法做一個文件夾中的每個* .csv文件,或者我必須明確列出我想要合併的每個文件? –

+0

不客氣。更新的答案。如果我的答案是你想要的,upvote並接受答案。 – tso

+0

確定這是工作很好,除了有一個換行符創建文件的結尾。我如何刪除它? –

0

在CMD窗口,這將插入符和刪除空行:

(for /f "delims=" %A in ('Type FileA.csv^&Echo:^&Type FileB.csv') Do @Echo %A)>FileC.csv 

在批處理

@Echo off 
(for /f "delims=" %%A in (
    'Type fileA.csv^&Echo:^&Type FileB.csv' 
) Do @Echo:%%A 
) > FileC.csv 
+0

我試過了,它仍然留下了一個空白行在創建的文件的末尾 –

相關問題