for ループで区切り文字を使用してファイルを連結する

for ループで区切り文字を使用してファイルを連結する

ファイルシステムから postgres にデータをロードしています。5 億個の単一ファイルがあり、各ファイルには 1 つの json があります。postgres で効率を上げるために、これらを単一ファイルとしてではなくバッチでロードしたいと思います。今のところ、次のループがあります:

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

ここに「バッチ機能」を追加するのを手伝っていただけますか?私はbashに精通していません。一度に40ファイルだけを取得し、その間に区切り文字を追加して、Postgresがそれらが別々の行であると認識できるようにする外部ループのようなものが必要だと思います。私は

ls|head -$j| tail -40

外側のループとしてですが、前述したように私は熟練していません...

関連情報