在 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

作为外循环,但正如所说我不熟练......

相关内容