Mam wiele plików CSV z tym samym nagłówkiem i staram się połączyć je razem w Batch i zachować tylko jeden nagłówek. Jakieś pomysły?Batch Combine CSV Usuń nagłówek
Odpowiedz
Możesz użyć MORE +1
, aby wyprowadzić wszystkie oprócz pierwszej linii.
>new.csv (
type file1.csv
more +1 file2.csv
more +1 file3.csv
REM etc.
)
Oczywiście można dostosować liczbę linii do pominięcia w każdym pliku w razie potrzeby.
Aby połączyć wszystkie pliki csv w bieżącym folderze: Edycja: zmodyfikowany, aby nie korzystać z nowo utworzonego csv wyjściowe jako wejście
@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
Albo można użyć FOR/F, aby uniknąć przetwarzanie nowo utworzone file:
@echo off
setlocal
set first=1
>new.csv (
for /f "eol=: delims=" %%F in ('dir /b /a-d *.csv') do (
if defined first (
type "%%F"
set "first="
) else more +1 "%%F"
)
)
Oczywiście jest to skuteczne tylko wtedy, gdy wszystkie pliki CSV mają ten sam format.
EDIT 30.07.2015:Istnieją pewne ograniczenia:
- znaki Tab zostanie przekształcona w ciąg pomieszczeń
- Każdy plik źródłowy CSV musi mieć mniej niż 64k linie
Dlaczego pierwszy przykład jest ograniczony do 64 tys. Wierszy? –
Występowały problemy z metodą dbenham do łączenia wszystkich plików CSV w bieżącym folderze. Od czasu do czasu pobierał wynikowy plik CSV i dołączał go do zestawu. Zmodyfikowałem go, aby uniknąć tego problemu.
@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"
)
)
)
- 1. Batch usuń dużą liczbę plików
- 2. Dodaj nagłówek do CSV bez ładowania CSV
- 3. SQLCL Batch Scripting: Auto Connection + EXPORT CSV
- 4. Usuń nagłówek z listyView
- 5. Usuń nagłówek Podsumowanie - StyleCop
- 6. Dołącz nagłówek do pliku CSV?
- 7. SQLite3 Importuj nagłówek CSV & exclude/skip
- 8. Symfony2 | Ukryj/usuń nagłówek Od odpowiedzi/forward
- 9. Windows Phone 8: usuń nagłówek przestawny
- 10. Usuń nagłówek Content-Type w apache
- 11. Usuń nagłówek HTTP Server w Jetty 9
- 12. Enum z metodami funkcjonalnymi (Combine Class/Enum)
- 13. split-apply-Combine na pandach timedelta column
- 14. Jak dodać nagłówek do pliku csv w Pythonie?
- 15. sed - usuń cytaty w cudzysłowach w dużych plikach CSV
- 16. Batch lista proces
- 17. JobParameters od Spring Batch
- 18. CRM WebApi batch request
- 19. Graph Batch API
- 20. [System.IO.Path] :: Combine nie bierze mojej zmiennej powershell jako parametru?
- 21. Batch żądanie usunięcia awarii aplikacji
- 22. Batch skopiować tylko zmodyfikowane pliki
- 23. Spring Batch po awarii JVM
- 24. Zmień nagłówek niestandardowego okna "nagłówek" na AlertDialog "nagłówek"
- 25. Scalanie 2 plików CSV
- 26. Używanie klasy CSV do analizy pliku .csv w Ruby
- 27. Usuwanie spacji w pliku CSV
- 28. Batch Wstawianie obiektów z relacjami w Laravel-4
- 29. Napisz przecinek w pliku CSV z PHP
- 30. Konfigurowanie Jenkins CI Praca i FreeFileSync Batch Korzystanie z systemu Windows Batch polecenia
Czy istnieje konkretny plik, który chcesz zachować w nagłówku (np .: tylko pierwszy plik CSV lub tylko ostatni?) Czy wszystkie pliki mają identyczny nagłówek? –