Verketten von Dateien mit Trennzeichen in einer For-Schleife

Verketten von Dateien mit Trennzeichen in einer For-Schleife

Ich lade Daten aus dem Dateisystem in Postgres. Ich habe 500 Millionen Einzeldateien, in jeder Datei 1 JSON. Um mit Postgres effizienter zu sein, möchte ich diese in Stapeln und nicht als einzelne Dateien laden. Im Moment habe ich diese Schleife:

time for i in datafiles/*; do   psql -c "\copy json_parts(json_data) FROM $i"& done

Können Sie mir bitte helfen, hier „Batch-Fähigkeiten“ hinzuzufügen? Ich bin nicht gut in Bash. Ich nehme an, es wird eine Art äußere Schleife benötigt, die nur sagen wir mal 40 Dateien auf einmal nimmt und dann Trennzeichen zwischen ihnen einfügt, damit Postgres weiß, dass es sich um separate Zeilen handelt? Ich spiele mit

ls|head -$j| tail -40

als äußere Schleife, aber wie gesagt, ich bin nicht kompetent ...

verwandte Informationen