Kaldır birleştirin. Herhangi bir fikir?Toplu CSV ben aynı başlığa sahip birden fazla CSV dosyası var ve Toplu bunları birlikte birleştirmek ve sadece tek bir başlık tutmaya çalışıyorum Başlığını
cevap
Sen 1 satır dışında tüm çıkışa MORE +1
kullanabilirsiniz.
>new.csv (
type file1.csv
more +1 file2.csv
more +1 file3.csv
REM etc.
)
Her dosyada gerektiği gibi atlamak için satır sayısını istediğiniz gibi ayarlayabilirsiniz. girdi
@echo off
setlocal
set first=1
>new.csv.tmp (
for %%F in (*.csv) do (
if defined first (
type "%%F"
set "first="
) else more +1 "%%F"
)
)
move /y new.csv.tmp new.csv >nul
olarak yeni oluşturulan çıktı csv kullanmayın değiştirilmiş Ya/F yeni oluşturulan işlenirken önlemek için İÇİN şunu kullanabilirsiniz: Edit:
Geçerli klasördeki tüm csv dosyalarını birleştirmek için dosya:Açıktır ki, bu yalnızca tüm csv dosyalarının aynı biçimi paylaşması durumunda etkilidir.
DÜZENLEME 2015/07/30:bazı sınırlamalar vardır:
- Tab karakterleri Her CSV kaynak dosyası olması gerekir
- alanlarda bir dizi çevrilecektir az 64k satırlar
İlk örnek neden 64k satırlarla sınırlı? –
Geçerli klasördeki tüm CSV dosyalarını birleştirmek için dbenham'ın yöntemiyle ilgili sorunlar yaşıyordum. Zaman zaman ortaya çıkan CSV'yi seçer ve sete dahil eder. Bu sorunu önlemek için değiştirdim.
@echo off
setlocal
set first=1
set fileName="combinedFiles.csv"
>%fileName% (
for %%F in (*.csv) do (
if not "%%F"==%fileName% (
if defined first (
type "%%F"
set "first="
) else more +1 "%%F"
)
)
)
başlıklarını korumanız isteyen belirli bir dosya var mı (örneğin: sadece son sadece ilk csv dosyası veya?) Veya dosyaların tümü aynı başlık var mı? –