Не думаю, что для этого использовал бы plpgsql. Сценарий оболочки может быть гораздо более полезным:
#!/bin/sh
DBHOST=mydbhost
DBNAME=mydbname
files=$1
target=$2
for file in ${files}; do
psql -h ${DBHOST} ${DBNAME} -c "\copy ${target} FROM '${file}' delimiters ','"
done
пример использования:
csv2psql "$(ls *.out.csv)" someschema.tablename
Примечание. Таким образом, вы также обойдете проблему чтения файлов с помощью COPY, которая требует от пользователя сервера postgres разрешения на чтение для файла.