Concatenar archivos con delimitador en bucle for

Concatenar archivos con delimitador en bucle for

Estoy cargando datos del sistema de archivos a postgres. Tengo 500 millones de archivos individuales, 1 json en cada archivo. Para ser más eficiente con postgres, quiero cargarlos en lotes, no como archivos individuales. Por ahora tengo este bucle:

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

¿Podría ayudarme a agregar "capacidades por lotes" aquí? No soy competente en bash. Supongo que se necesita algún tipo de bucle externo que tome solo, digamos, 40 archivos a la vez y luego agregue un delimitador entre ellos para que postgres sepa que son filas separadas. estoy jugando con

ls|head -$j| tail -40

como bucle externo, pero como dije, no soy competente...

información relacionada