Я загружаю довольно гигантский файл в базу данных postgresql. Для этого я сначала использую split
в файле, чтобы получить файлы меньшего размера (по 30Gb каждый), а затем загружаю каждый меньший файл в базу данных с помощью GNU Parallel
и psql copy
.
Проблема в том, что для разделения файла требуется около 7 часов, а затем он начинает загружать файл на ядро. Мне нужен способ сообщить split
распечатать имя файла для вывода std каждый раз, когда он заканчивает запись файла, поэтому я могу передать его на Parallel
и он начнет загружать файлы в то время split
завершить запись, Что-то вроде этого:
split -l 50000000 2011.psv carga/2011_ | parallel ./carga_postgres.sh {}
Я прочитал man-страницы split
, и я ничего не могу найти. Есть ли способ сделать это с помощью split
или любого другого инструмента?