在 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

作為外循環,但正如所說我不熟練......

相關內容